name: Pull Request on: pull_request: branches: [ master ] jobs: ktlint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up JDK 1.8 uses: actions/setup-java@v1 with: java-version: 1.8 - uses: actions/cache@v2 with: path: | ~/.gradle/caches ~/.gradle/wrapper key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} restore-keys: | ${{ runner.os }}-gradle- - name: Mock google-services.json run: mv .github/mock-google-services.json app/google-services.json - name: Validate ktlint run: ./gradlew ktlintCheck lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up JDK 1.8 uses: actions/setup-java@v1 with: java-version: 1.8 - uses: actions/cache@v2 with: path: | ~/.gradle/caches ~/.gradle/wrapper key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} restore-keys: | ${{ runner.os }}-gradle- - name: Mock google-services.json run: mv .github/mock-google-services.json app/google-services.json - name: Validate Lint run: ./gradlew lint test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up JDK 1.8 uses: actions/setup-java@v1 with: java-version: 1.8 - uses: actions/cache@v2 with: path: | ~/.gradle/caches ~/.gradle/wrapper key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} restore-keys: | ${{ runner.os }}-gradle- - name: Mock google-services.json run: mv .github/mock-google-services.json app/google-services.json - name: Validate Tests run: ./gradlew test pr_build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up JDK 1.8 uses: actions/setup-java@v1 with: java-version: 1.8 - uses: actions/cache@v2 with: path: | ~/.gradle/caches ~/.gradle/wrapper key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} restore-keys: | ${{ runner.os }}-gradle- - name: Mock google-services.json run: mv .github/mock-google-services.json app/google-services.json - name: Build Debug APK run: ./gradlew assembleDebug - name: Archive Debug Build uses: kittaakos/upload-artifact-as-is@v0 with: path: ./app/build/outputs/apk/*/debug/*-debug.apk