77 instrumented-tests :
88 name : " Instrumented Tests"
99 timeout-minutes : 30
10- runs-on : macos -latest
10+ runs-on : ubuntu -latest
1111 steps :
1212 - name : " Checkout Branch"
1313 uses : actions/checkout@v3
14- - name : " Install JDK 11 "
14+ - name : " Install JDK 17 "
1515 uses : actions/setup-java@v3
1616 with :
1717 distribution : " zulu"
18- java-version : " 11 "
18+ java-version : " 17 "
1919 - name : Gradle cache
2020 uses : gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # v2.9.0
2121 - name : AVD cache
@@ -35,14 +35,23 @@ jobs:
3535 emulator-options : -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
3636 disable-animations : false
3737 script : echo "Generated AVD snapshot for caching."
38+ - name : Enable KVM group perms
39+ run : |
40+ echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
41+ sudo udevadm control --reload-rules
42+ sudo udevadm trigger --name-match=kvm
3843 - name : " Run Instrumented Tests"
3944 uses : reactivecircus/android-emulator-runner@d94c3fbe4fe6a29e4a5ba47c12fb47677c73656b # v2.28.0
4045 with :
4146 api-level : 29
4247 force-avd-creation : false
4348 emulator-options : -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
4449 disable-animations : true
45- script : ./gradlew :android-core:cAT :android-kit-base:cAT --stacktrace
50+ # script: ./gradlew :android-core:cAT :android-kit-base:cAT --stacktrace
51+ script : |
52+ # Disable benchmark tests as they do not work on emulators
53+ adb uninstall com.mparticle.kits.test; ./gradlew connectedCheck --stacktrace
54+ ./gradlew :android-core:cAT :android-kit-base:cAT -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=none
4655 - name : " Archive Instrumented Tests Results"
4756 uses : actions/upload-artifact@v3
4857 if : always()
@@ -53,25 +62,18 @@ jobs:
5362 instrumented-orchestrator-tests :
5463 name : " Instrumented Orchestrator Tests"
5564 timeout-minutes : 30
56- runs-on : macos -latest
65+ runs-on : ubuntu -latest
5766 steps :
5867 - name : " Checkout Branch"
5968 uses : actions/checkout@v3
60- - name : " Install JDK 11 "
69+ - name : " Install JDK 17 "
6170 uses : actions/setup-java@v3
6271 with :
6372 distribution : " zulu"
64- java-version : " 11 "
73+ java-version : " 17 "
6574 - name : Gradle cache
6675 uses : gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # v2.9.0
67- - name : AVD cache
68- uses : actions/cache@v3
69- id : avd-cache
70- with :
71- path : |
72- ~/.android/avd/*
73- ~/.android/adb*
74- key : avd-29
76+
7577 - name : create AVD and generate snapshot for caching
7678 if : steps.avd-cache.outputs.cache-hit != 'true'
7779 uses : reactivecircus/android-emulator-runner@d94c3fbe4fe6a29e4a5ba47c12fb47677c73656b # v2.28.0
@@ -81,14 +83,22 @@ jobs:
8183 emulator-options : -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
8284 disable-animations : false
8385 script : echo "Generated AVD snapshot for caching."
86+ - name : Enable KVM group perms
87+ run : |
88+ echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
89+ sudo udevadm control --reload-rules
90+ sudo udevadm trigger --name-match=kvm
8491 - name : " Run Instrumented Orchestrator Tests"
8592 uses : reactivecircus/android-emulator-runner@d94c3fbe4fe6a29e4a5ba47c12fb47677c73656b # v2.28.0
8693 with :
8794 api-level : 29
8895 force-avd-creation : false
8996 emulator-options : -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
9097 disable-animations : true
91- script : ./gradlew -Porchestrator=true :android-core:cAT --stacktrace
98+ script : |
99+ # Disable benchmark tests as they do not work on emulators
100+ adb uninstall com.mparticle.test; ./gradlew connectedCheck --stacktrace
101+ ./gradlew -Porchestrator=true :android-core:cAT -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=none
92102 - name : " Archive Instrumented Orchestrator Tests Results"
93103 uses : actions/upload-artifact@v3
94104 if : always()
@@ -102,11 +112,11 @@ jobs:
102112 steps :
103113 - name : " Checkout Branch"
104114 uses : actions/checkout@v3
105- - name : " Install JDK 11 "
115+ - name : " Install JDK 17 "
106116 uses : actions/setup-java@v3
107117 with :
108118 distribution : " zulu"
109- java-version : " 11 "
119+ java-version : " 17 "
110120 - name : " Run Unit Tests"
111121 run : ./gradlew test
112122 - name : " Print Android Unit Tests Report"
@@ -128,11 +138,11 @@ jobs:
128138 uses : actions/checkout@v3
129139 with :
130140 submodules : recursive
131- - name : " Install JDK 11 "
141+ - name : " Install JDK 17 "
132142 uses : actions/setup-java@v3
133143 with :
134144 distribution : " zulu"
135- java-version : " 11 "
145+ java-version : " 17 "
136146 - name : " Run Android Core SDK Lint"
137147 run : ./gradlew lint
138148 - name : " Archive Lint Test Results"
@@ -151,11 +161,11 @@ jobs:
151161 uses : actions/checkout@v3
152162 with :
153163 submodules : recursive
154- - name : " Install JDK 11 "
164+ - name : " Install JDK 17 "
155165 uses : actions/setup-java@v3
156166 with :
157167 distribution : " zulu"
158- java-version : " 11 "
168+ java-version : " 17 "
159169 - name : " Run Android Core SDK Kotlin Lint"
160170 run : ./gradlew ktlintCheck
161171 - name : " Archive Kotlin Lint Test Results"
@@ -181,11 +191,11 @@ jobs:
181191 with :
182192 submodules : recursive
183193 fetch-depth : 0
184- - name : " Install JDK 11 "
194+ - name : " Install JDK 17 "
185195 uses : actions/setup-java@v3
186196 with :
187197 distribution : " zulu"
188- java-version : " 11 "
198+ java-version : " 17 "
189199 - name : " Get Latest Kits"
190200 run : git submodule foreach "git rebase main"
191201 - name : " Generate Core Release Build"
0 commit comments