diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 860ba57..19fd0f4 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -105,15 +105,15 @@ jobs: fail-fast: false matrix: include: - # x86_64 tests: run against CentOS 7 and 8 with the linux-64 installer + # x86_64 tests: run against varous EL versions with the linux-64 installer - os: ubuntu-latest - docker_image: centos:7 + docker_image: almalinux:8 installer: installer-linux-64 - os: ubuntu-latest - docker_image: centos:8 + docker_image: almalinux:9 installer: installer-linux-64 - os: ubuntu-latest - docker_image: almalinux:9 + docker_image: almalinux:10 installer: installer-linux-64 # ARM tests: run only AlmaLinux 9 tests with the linux-aarch64 installer - os: ubuntu-24.04-arm diff --git a/construct.yaml b/construct.yaml index 3c1637a..d898be1 100644 --- a/construct.yaml +++ b/construct.yaml @@ -66,8 +66,8 @@ specs: - fts3 >=3.12 - nordugrid-arc >=6.21 # [not osx] - python-gfal2 >=1.13.0 - - htcondor-utils >=24.2 # [linux] - - python-htcondor >=24.2 # [linux] + - htcondor-utils ~=25.0.0 # [linux] + - python-htcondor ~=25.0.0 # [linux] - rucio-clients >=36.0.0 - voms >=2.1.0rc3 # Others diff --git a/pixi.toml b/pixi.toml index 114ac53..a80b6c9 100644 --- a/pixi.toml +++ b/pixi.toml @@ -34,7 +34,7 @@ default = { features = [], solve-group = "default" } release = { features = ["release"], no-default-feature = true } [target.linux-64.activation.env] -CONDA_OVERRIDE_GLIBC = "2.17" +CONDA_OVERRIDE_GLIBC = "2.28" [target.linux-aarch64.activation.env] CONDA_OVERRIDE_GLIBC = "2.28" diff --git a/scripts/run_basic_tests.sh b/scripts/run_basic_tests.sh index 8779c69..6d678f9 100755 --- a/scripts/run_basic_tests.sh +++ b/scripts/run_basic_tests.sh @@ -18,8 +18,19 @@ exec docker run --rm --privileged -v "${PWD}":/diracos-repo "${IMAGE_NAME}" bash mkdir "${install_home}" chown tester:tester "${install_home}" chmod 500 "${install_home}" - runuser -u tester -- env HOME="${install_home}" \ - bash -c "cd \"${workdir}\" && bash /diracos-repo/'"${DIRACOS_INSTALLER}"'" + + install_cmd="env HOME=\"${install_home}\" bash -c \"cd \\\"${workdir}\\\" && bash /diracos-repo/'"${DIRACOS_INSTALLER}"'\"" + if command -v runuser >/dev/null 2>&1; then + runuser -u tester -- bash -c "${install_cmd}" + elif command -v su >/dev/null 2>&1; then + su -s /bin/bash tester -c "${install_cmd}" + elif command -v sudo >/dev/null 2>&1; then + sudo -u tester bash -c "${install_cmd}" + else + echo "Neither runuser, su, nor sudo is available in the container" >&2 + exit 1 + fi + # Restore normal permissions for the post-install test suite (singularity # user-namespace mapping cannot traverse tester-owned dirs). chown -R root:root "${workdir}"