diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index d0ca2b1..fc47e19 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -7,7 +7,7 @@ jobs: unit-test: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: ruby-version: '3.1' @@ -21,14 +21,14 @@ jobs: uses: actions/cache@v3 with: path: ~/.gradle/wrapper - key: ${{ runner.OS }}-gradle-wrapper-cache-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }} + key: ${{ runner.OS }}-gradle-wrapper-cache-${{ hashFiles('build.gradle.kts', 'settings.gradle.kts', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} restore-keys: | ${{ runner.OS }}-gradle-wrapper-cache- - name: Cache Gradle caches uses: actions/cache@v3 with: path: ~/.gradle/caches - key: ${{ runner.OS }}-gradle-caches-cache-${{ hashFiles('build.gradle.kts') }} + key: ${{ runner.OS }}-gradle-caches-cache-${{ hashFiles('build.gradle.kts', 'settings.gradle.kts', 'gradle/libs.versions.toml') }} restore-keys: | ${{ runner.OS }}-gradle-caches-cache- - name: generate ksProp file @@ -50,12 +50,26 @@ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 - name: set up JDK 17 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: '17' + - name: Cache Gradle wrapper + uses: actions/cache@v3 + with: + path: ~/.gradle/wrapper + key: ${{ runner.OS }}-gradle-wrapper-cache-${{ hashFiles('build.gradle.kts', 'settings.gradle.kts', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} + restore-keys: | + ${{ runner.OS }}-gradle-wrapper-cache- + - name: Cache Gradle caches + uses: actions/cache@v3 + with: + path: ~/.gradle/caches + key: ${{ runner.OS }}-gradle-caches-cache-${{ hashFiles('build.gradle.kts', 'settings.gradle.kts', 'gradle/libs.versions.toml') }} + restore-keys: | + ${{ runner.OS }}-gradle-caches-cache- - name: generate ksProp file run: ./gradlew generateKsPropFile - name: generate google-services.json file @@ -74,12 +88,26 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: set up JDK 17 uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: '17' + - name: Cache Gradle wrapper + uses: actions/cache@v3 + with: + path: ~/.gradle/wrapper + key: ${{ runner.OS }}-gradle-wrapper-cache-${{ hashFiles('build.gradle.kts', 'settings.gradle.kts', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} + restore-keys: | + ${{ runner.OS }}-gradle-wrapper-cache- + - name: Cache Gradle caches + uses: actions/cache@v3 + with: + path: ~/.gradle/caches + key: ${{ runner.OS }}-gradle-caches-cache-${{ hashFiles('build.gradle.kts', 'settings.gradle.kts', 'gradle/libs.versions.toml') }} + restore-keys: | + ${{ runner.OS }}-gradle-caches-cache- - name: generate ksProp file run: ./gradlew generateKsPropFile - name: generate google-services.json file @@ -106,6 +134,12 @@ jobs: with: name: ui-test-video path: ./ui-test.mp4 + - name: Upload UI test results + if: always() + uses: actions/upload-artifact@v4 + with: + name: ui-test-results + path: app/build/reports/androidTests/connected/ notify-slack: needs: unit-test