@@ -187,6 +187,59 @@ jobs:
187
187
SCALA_CLI_IT_GROUP : 3
188
188
SCALA_CLI_SODIUM_JNI_ALLOW : false
189
189
190
+ # Copied from https://github.com/coursier/coursier/blob/44e1a024897fb1046303f705e0e4143d808e1adc/.github/workflows/ci.yml#L263-L326
191
+ generate-linux-arm64-native-launcher :
192
+ runs-on : " ubuntu-20.04"
193
+ steps :
194
+ - uses : actions/checkout@v3
195
+ with :
196
+ fetch-depth : 0
197
+ submodules : true
198
+ - uses : VirtusLab/scala-cli-setup@2d4aee229d96837c8da9e6068322de977e2f781a
199
+ with :
200
+ jvm : " temurin:17"
201
+
202
+ with :
203
+ arch : aarch64
204
+ distro : ubuntu20.04
205
+
206
+ # Speeds up builds per the run-on-arch-action README
207
+ githubToken : ${{ github.token }}
208
+
209
+ setup : |
210
+ mkdir -p artifacts
211
+ mkdir -p utils
212
+ cp "$(cs get https://github.com/coursier/coursier/releases/download/v2.0.16/cs-aarch64-pc-linux)" utils/cs
213
+ chmod +x utils/cs
214
+ dockerRunArgs : |
215
+ --volume "${PWD}/artifacts:/artifacts"
216
+ --volume "${PWD}/utils:/utils"
217
+ env : |
218
+ JAVA_HOME: /jvm
219
+ JAVA_OPTS: "-Djdk.lang.Process.launchMechanism=vfork"
220
+
221
+ # The shell to run commands with in the container
222
+ shell : /bin/bash
223
+
224
+ # build-essential and libz-dev are required to build native images.
225
+ # git is required by some of the launcher.sc logic.
226
+ # python3-pip is required for some CLI tests.
227
+ # gnupg2 is for signing the resulting binary.
228
+ install : |
229
+ apt-get update -q -y
230
+ apt-get install -q -y build-essential libz-dev git python3-pip gnupg2 curl
231
+ run : |
232
+ set -e
233
+ export PATH="/utils:$PATH"
234
+ git config --global --add safe.directory "$(pwd)"
235
+ ./mill -i copyDefaultLauncher artifacts/
236
+ - uses : actions/upload-artifact@v3
237
+ with :
238
+ name : linux-aarch64-launchers
239
+ path : artifacts/
240
+ if-no-files-found : error
241
+ retention-days : 2
242
+
190
243
generate-macos-launcher :
191
244
timeout-minutes : 120
192
245
runs-on : " macos-latest"
@@ -869,6 +922,7 @@ jobs:
869
922
- format
870
923
- checks
871
924
- reference-doc
925
+ - generate-linux-arm64-native-launcher
872
926
if : github.event_name == 'push'
873
927
runs-on : ubuntu-20.04
874
928
steps :
@@ -885,6 +939,11 @@ jobs:
885
939
with :
886
940
name : linux-launchers
887
941
path : artifacts/
942
+ - uses : actions/download-artifact@v3
943
+ if : env.SHOULD_PUBLISH == 'true'
944
+ with :
945
+ name : linux-aarch64-launchers
946
+ path : artifacts/
888
947
- uses : actions/download-artifact@v3
889
948
if : env.SHOULD_PUBLISH == 'true'
890
949
with :
0 commit comments