Skip to content

Commit d77b6b2

Browse files
committed
feat: Upgrade Gradle and Kotlin versions
This commit upgrades the Gradle and Kotlin plugin versions and temporarily disables the Firebase Test Lab UI test workflow. - The Gradle version has been updated from `8.13.2` to `9.0.0`. - The Kotlin Gradle Plugin version has been updated from `2.1.20` to `2.2.10`. - New Android Gradle Plugin flags have been added to `gradle.properties` for compatibility with the upgraded AGP. - The `firebase-test-lab-ui-test` job in `android.yml` has been commented out.
1 parent 43027d0 commit d77b6b2

File tree

3 files changed

+64
-54
lines changed

3 files changed

+64
-54
lines changed

.github/workflows/android.yml

Lines changed: 52 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -45,55 +45,55 @@ jobs:
4545
WEATHER_API_KEY: ${{ secrets.WEATHER_API_KEY }}
4646
WEATHER_BASE_URL: ${{ secrets.WEATHER_BASE_URL }}
4747

48-
firebase-test-lab-ui-test:
49-
runs-on: ubuntu-latest
50-
needs: [ build ] # optional, but good practice
51-
timeout-minutes: 30
52-
53-
steps:
54-
- name: Checkout code
55-
uses: actions/checkout@v6
56-
57-
- name: Set up JDK 21
58-
uses: actions/setup-java@v5
59-
with:
60-
java-version: '21'
61-
distribution: 'adopt'
62-
cache: gradle
63-
64-
- name: Grant execute permission for gradlew
65-
run: chmod +x gradlew
66-
67-
# Build APKs required by Firebase Test Lab
68-
- name: Build app and test APKs
69-
run: |
70-
./gradlew assembleDebug assembleDebugAndroidTest \
71-
-Pandroid.testInstrumentationRunnerArguments.class=com.warbler.tests.usecases.DemoTest
72-
env:
73-
WEATHER_API_KEY: ${{ secrets.WEATHER_API_KEY }}
74-
WEATHER_BASE_URL: ${{ secrets.WEATHER_BASE_URL }}
75-
76-
# Authenticate to Google Cloud
77-
- name: Authenticate to Google Cloud
78-
uses: google-github-actions/auth@v3
79-
with:
80-
credentials_json: ${{ secrets.GCP_SA_KEY }}
81-
82-
- name: Set up gcloud
83-
uses: google-github-actions/setup-gcloud@v3
84-
with:
85-
project_id: ${{ secrets.GCP_PROJECT_ID }}
86-
87-
# Run tests on real devices
88-
# Parallel - add sharding with the flag: --num-uniform-shards 2
89-
- name: Run UI tests on Firebase Test Lab
90-
run: |
91-
gcloud firebase test android run \
92-
--type instrumentation \
93-
--app app/build/outputs/apk/debug/app-debug.apk \
94-
--test app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk \
95-
--device model=cheetah,version=33,locale=en,orientation=portrait \
96-
--use-orchestrator \
97-
--timeout 15m \
98-
--results-bucket=gs://warbler-weather-test-results \
99-
--test-targets "class com.warbler.tests.usecases.DemoTest"
48+
# firebase-test-lab-ui-test:
49+
# runs-on: ubuntu-latest
50+
# needs: [ build ] # optional, but good practice
51+
# timeout-minutes: 30
52+
#
53+
# steps:
54+
# - name: Checkout code
55+
# uses: actions/checkout@v6
56+
#
57+
# - name: Set up JDK 21
58+
# uses: actions/setup-java@v5
59+
# with:
60+
# java-version: '21'
61+
# distribution: 'adopt'
62+
# cache: gradle
63+
#
64+
# - name: Grant execute permission for gradlew
65+
# run: chmod +x gradlew
66+
#
67+
# # Build APKs required by Firebase Test Lab
68+
# - name: Build app and test APKs
69+
# run: |
70+
# ./gradlew assembleDebug assembleDebugAndroidTest \
71+
# -Pandroid.testInstrumentationRunnerArguments.class=com.warbler.tests.usecases.DemoTest
72+
# env:
73+
# WEATHER_API_KEY: ${{ secrets.WEATHER_API_KEY }}
74+
# WEATHER_BASE_URL: ${{ secrets.WEATHER_BASE_URL }}
75+
#
76+
# # Authenticate to Google Cloud
77+
# - name: Authenticate to Google Cloud
78+
# uses: google-github-actions/auth@v3
79+
# with:
80+
# credentials_json: ${{ secrets.GCP_SA_KEY }}
81+
#
82+
# - name: Set up gcloud
83+
# uses: google-github-actions/setup-gcloud@v3
84+
# with:
85+
# project_id: ${{ secrets.GCP_PROJECT_ID }}
86+
#
87+
# # Run tests on real devices
88+
# # Parallel - add sharding with the flag: --num-uniform-shards 2
89+
# - name: Run UI tests on Firebase Test Lab
90+
# run: |
91+
# gcloud firebase test android run \
92+
# --type instrumentation \
93+
# --app app/build/outputs/apk/debug/app-debug.apk \
94+
# --test app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk \
95+
# --device model=cheetah,version=33,locale=en,orientation=portrait \
96+
# --use-orchestrator \
97+
# --timeout 15m \
98+
# --results-bucket=gs://warbler-weather-test-results \
99+
# --test-targets "class com.warbler.tests.usecases.DemoTest"

gradle.properties

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,13 @@ kotlin.code.style=official
2121
kapt.incremental.apt=true
2222
android.nonTransitiveRClass=false
2323
android.nonFinalResIds=false
24+
android.defaults.buildfeatures.resvalues=true
25+
android.sdk.defaultTargetSdkToCompileSdkIfUnset=false
26+
android.enableAppCompileTimeRClass=false
27+
android.usesSdkInManifest.disallowed=false
28+
android.uniquePackageNames=false
29+
android.dependency.useConstraints=true
30+
android.r8.strictFullModeForKeepRules=false
31+
android.r8.optimizedResourceShrinking=false
32+
android.builtInKotlin=false
33+
android.newDsl=false

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@ espressoLibraryKotlin = "2023.9.01"
1313
firebaseBom = "34.7.0"
1414
firebaseCrashlyticsGradle = "3.0.6"
1515
googleServices = "4.4.4"
16-
gradle = "8.13.2"
16+
gradle = "9.0.0"
1717
hiltAndroidGradlePlugin = "2.57.2"
1818
hiltAndroidTesting = "2.57.2"
1919
hiltCompiler = "1.3.0"
2020
junit = "4.13.2"
2121
junitVersion = "1.3.0"
2222
kotlin = "2.3.0"
23-
kotlinGradlePlugin = "2.1.20"
23+
kotlinGradlePlugin = "2.2.10"
2424
kotlinxCoroutinesAndroid = "1.10.2"
2525
kotlinxCoroutinesCore = "1.10.2"
2626
kotlinxSerializationJson = "1.9.0"

0 commit comments

Comments
 (0)