From da4a6e466d17bef75e4499753478068369c03991 Mon Sep 17 00:00:00 2001 From: Martin Kinkelin Date: Mon, 15 Jul 2024 11:34:58 +0200 Subject: [PATCH] GHA: Switch to Docker image for Alpine workflow (#4705) --- .github/workflows/alpine_musl.yml | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/.github/workflows/alpine_musl.yml b/.github/workflows/alpine_musl.yml index f8bf629ca5..978d07893e 100644 --- a/.github/workflows/alpine_musl.yml +++ b/.github/workflows/alpine_musl.yml @@ -11,20 +11,17 @@ jobs: test: name: Alpine Linux (musl libc) runs-on: ubuntu-latest + container: alpine:3.20 steps: + - name: Install prerequisites + run: apk add ldc git g++ cmake ninja llvm-dev llvm-static compiler-rt libxml2-static zstd-static zlib-static bash grep diffutils make + - uses: actions/checkout@v4 with: submodules: true fetch-depth: 50 - - name: Setup latest Alpine Linux - uses: jirutka/setup-alpine@v1 - with: - branch: v3.20 - packages: ldc git g++ cmake ninja llvm-dev llvm-static compiler-rt libxml2-static zstd-static zlib-static bash grep diffutils make - - name: Build LDC bootstrap - shell: alpine.sh {0} run: | ninja --version set -eux @@ -43,7 +40,6 @@ jobs: # TODO: Add '-DLLVM_IS_SHARED=OFF' when static linking is fully supported # TSan and XRay do not work. - name: Build LDC & LDC D unittests & defaultlib unittest runners - shell: alpine.sh {0} run: | set -eux cmake -G Ninja . \ @@ -60,19 +56,16 @@ jobs: - name: Run LDC D unittests if: success() || failure() - shell: alpine.sh {0} run: ctest --output-on-failure -R "ldc2-unittest" - name: Run LIT testsuite if: success() || failure() - shell: alpine.sh {0} run: | set -eux ctest -V -R "lit-tests" - name: Run DMD testsuite if: success() || failure() - shell: alpine.sh {0} run: | # These two tests require extra flags "-link-defaultlib-debug -frame-pointer=all", https://github.com/ldc-developers/ldc/issues/4694. # Run them separately with these flags, and then remove them before running the full testsuite. @@ -86,7 +79,6 @@ jobs: - name: Run defaultlib unittests & druntime integration tests if: success() || failure() - shell: alpine.sh {0} run: | set -eux ctest -j$(nproc) --output-on-failure -E "dmd-testsuite|lit-tests|ldc2-unittest"