Skip to content

Commit 8ce08ca

Browse files
committed
compose jobs with arch
1 parent 2f7e17e commit 8ce08ca

File tree

1 file changed

+26
-25
lines changed

1 file changed

+26
-25
lines changed

.github/workflows/linux-precompile.yml

+26-25
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,15 @@ jobs:
1515
MIX_ENV: prod
1616
strategy:
1717
matrix:
18+
arch:
19+
- x86_64
20+
- aarch64
21+
- riscv64
1822
job:
19-
- {otp: "27", elixir: "1.17", nif: "2.17"}
20-
- {otp: "25", elixir: "1.16", nif: "2.16"}
23+
- {otp: "27", elixir: "1.17"}
24+
- {otp: "25", elixir: "1.16"}
2125

22-
name: Linux x86_64 - OTP ${{ matrix.job.otp }} - Elixir ${{ matrix.job.elixir }}
26+
name: Linux ${{ matrix.arch }} - OTP ${{ matrix.job.otp }} - Elixir ${{ matrix.job.elixir }}
2327
steps:
2428
- name: Checkout
2529
uses: actions/checkout@v4
@@ -41,37 +45,34 @@ jobs:
4145
gcc-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu \
4246
gcc-s390x-linux-gnu g++-s390x-linux-gnu
4347
44-
- name: Get musl cross-compilers
48+
- name: Get musl ${{ matrix.arch }} cross-compilers
4549
run: |
46-
for musl_arch in x86_64 aarch64 riscv64
47-
do
48-
wget "https://musl.cc/${musl_arch}-linux-musl-cross.tgz" -O "${musl_arch}-linux-musl-cross.tgz"
49-
tar -xf "${musl_arch}-linux-musl-cross.tgz"
50-
done
50+
wget "https://musl.cc/${{matrix.arch}}-linux-musl-cross.tgz" -O "${{matrix.arch}}-linux-musl-cross.tgz"
51+
tar -xf "${{matrix.arch}}-linux-musl-cross.tgz"
5152
52-
- name: Create precompiled x86_64 library
53+
- name: Create precompiled ${{ matrix.arch }} library
5354
run: |
54-
export PATH="$(pwd)/x86_64-linux-musl-cross/bin:${PATH}"
55+
export PATH="$(pwd)/${{ matrix.arch }}-linux-musl-cross/bin:${PATH}"
5556
export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
5657
mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
5758
mix deps.get
5859
mix elixir_make.precompile
5960
60-
- name: Create precompiled aarch64 library
61-
run: |
62-
export PATH="$(pwd)/aarch64-linux-musl-cross/bin:${PATH}"
63-
export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
64-
mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
65-
mix deps.get
66-
mix elixir_make.precompile
61+
# - name: Create precompiled aarch64 library
62+
# run: |
63+
# export PATH="$(pwd)/aarch64-linux-musl-cross/bin:${PATH}"
64+
# export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
65+
# mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
66+
# mix deps.get
67+
# mix elixir_make.precompile
6768

68-
- name: Create precompiled riscv64 library
69-
run: |
70-
export PATH="$(pwd)/riscv64-linux-musl-cross/bin:${PATH}"
71-
export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
72-
mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
73-
mix deps.get
74-
mix elixir_make.precompile
69+
# - name: Create precompiled riscv64 library
70+
# run: |
71+
# export PATH="$(pwd)/riscv64-linux-musl-cross/bin:${PATH}"
72+
# export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
73+
# mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
74+
# mix deps.get
75+
# mix elixir_make.precompile
7576

7677
- uses: softprops/action-gh-release@v1
7778
if: startsWith(github.ref, 'refs/tags/')

0 commit comments

Comments
 (0)