@@ -62,21 +62,42 @@ jobs:
62
62
name : build-artifacts
63
63
path : ./app/build/outputs/
64
64
test :
65
- runs-on : macos -latest
65
+ runs-on : ubuntu -latest
66
66
strategy :
67
67
matrix :
68
68
api-level : [33]
69
69
steps :
70
+ - name : Delete unnecessary tools 🔧
71
+
72
+ with :
73
+ android : false # Don't remove Android tools
74
+ tool-cache : true # Remove image tool cache - rm -rf "$AGENT_TOOLSDIRECTORY"
75
+ dotnet : true # rm -rf /usr/share/dotnet
76
+ haskell : true # rm -rf /opt/ghc...
77
+ swap-storage : true # rm -f /mnt/swapfile (4GiB)
78
+ docker-images : false # Takes 16s, enable if needed in the future
79
+ large-packages : false # includes google-cloud-sdk and it's slow
80
+
81
+ - name : Enable KVM group perms
82
+ run : |
83
+ echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
84
+ sudo udevadm control --reload-rules
85
+ sudo udevadm trigger --name-match=kvm
86
+ ls /dev/kvm
87
+
70
88
- name : checkout
71
89
uses : actions/checkout@v3
90
+
72
91
- name : Set up JDK 17
73
92
uses : actions/setup-java@v3
74
93
with :
75
94
java-version : ' 17'
76
95
distribution : ' temurin'
77
96
cache : gradle
97
+
78
98
- name : Gradle cache
79
99
uses : gradle/gradle-build-action@v2
100
+
80
101
- name : AVD cache
81
102
uses : actions/cache@v3
82
103
id : avd-cache
85
106
~/.android/avd/*
86
107
~/.android/adb*
87
108
key : avd-${{ matrix.api-level }}
109
+
88
110
- name : create AVD and generate snapshot for caching
89
111
if : steps.avd-cache.outputs.cache-hit != 'true'
90
112
uses : reactivecircus/android-emulator-runner@v2
@@ -94,8 +116,11 @@ jobs:
94
116
target : google_apis
95
117
arch : x86_64
96
118
emulator-options : -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
97
- disable-animations : false
119
+ disable-animations : true
120
+ disk-size : 6000M
121
+ heap-size : 600M
98
122
script : echo "Generated AVD snapshot for caching."
123
+
99
124
- name : run tests
100
125
uses : reactivecircus/android-emulator-runner@v2
101
126
with :
@@ -106,6 +131,7 @@ jobs:
106
131
emulator-options : -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
107
132
disable-animations : true
108
133
script : gradle connectedCheck --scan
134
+
109
135
- name : Archive test reports
110
136
uses : actions/upload-artifact@v3
111
137
if : success() || failure()
0 commit comments