From bf8d7683baccd19fbc058eb087dd293e196a3f6d Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Mon, 2 Dec 2024 13:52:11 +0100 Subject: [PATCH] Fix GitHub Actions for CentOS container Node 16 support is removed and Node 20 requires a newer GLibc. Install an unofficial Node 20 that is build against GLibc 2.17 --- .github/workflows/end2end.yml | 11 +++++++++-- .github/workflows/unit_tests_python2.yml | 11 +++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/.github/workflows/end2end.yml b/.github/workflows/end2end.yml index e74b65cc79..7951137a1b 100644 --- a/.github/workflows/end2end.yml +++ b/.github/workflows/end2end.yml @@ -18,10 +18,17 @@ jobs: fail-fast: false container: image: ghcr.io/easybuilders/${{ matrix.container }}-amd64 - env: {ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true} # Allow using Node16 actions + volumes: + - /node20217:/node20217:rw,rshared + - ${{ matrix.container == 'centos-7.9' && '/node20217:/__e/node20:ro,rshared' || ' ' }} steps: + - name: install nodejs20glibc2.17 + if: ${{ matrix.container == 'centos-7.9' }} + run: | + curl -LO https://unofficial-builds.nodejs.org/download/release/v20.9.0/node-v20.9.0-linux-x64-glibc-217.tar.xz + tar -xf node-v20.9.0-linux-x64-glibc-217.tar.xz --strip-components 1 -C /node20217 - name: Check out the repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: download and unpack easyblocks and easyconfigs repositories run: | diff --git a/.github/workflows/unit_tests_python2.yml b/.github/workflows/unit_tests_python2.yml index aa00f9a2fd..9ed3ae25d0 100644 --- a/.github/workflows/unit_tests_python2.yml +++ b/.github/workflows/unit_tests_python2.yml @@ -16,9 +16,16 @@ jobs: # CentOS 7.9 container that already includes Lmod & co, # see https://github.com/easybuilders/easybuild-containers image: ghcr.io/easybuilders/centos-7.9-amd64 - env: {ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true} # Allow using Node16 actions + volumes: + - '/node20217:/node20217:rw,rshared' + - '/node20217:/__e/node20:ro,rshared' steps: - - uses: actions/checkout@v3 + - name: install nodejs20glibc2.17 + run: | + curl -LO https://unofficial-builds.nodejs.org/download/release/v20.9.0/node-v20.9.0-linux-x64-glibc-217.tar.xz + tar -xf node-v20.9.0-linux-x64-glibc-217.tar.xz --strip-components 1 -C /node20217 + + - uses: actions/checkout@v4 - name: install Python packages run: |