Skip to content

Tests for EESSI pilot repo #201

Tests for EESSI pilot repo

Tests for EESSI pilot repo #201

Workflow file for this run

# documentation: https://help.github.com/en/articles/workflow-syntax-for-github-actions
name: Tests for EESSI pilot repo
on:
push:
pull_request:
schedule:
# run check daily at 08:00 UTC
# * is a special character in YAML so you have to quote this string
- cron: '0 14 * * *'
# Declare default permissions as read only.
permissions: read-all
jobs:
pilot_repo:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
EESSI_VERSION:
# note: use string quotes here, to avoid values being interpreted as floating point values...
- '2021.12'
EESSI_ARCH:
- aarch64
- ppc64le
- x86_64
EESSI_OS:
- linux
python:
- 3.8
steps:
- name: Check out code
uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Install QEMU
if: matrix.EESSI_ARCH != 'x86_64'
run: |
sudo apt-get update
sudo apt-get install qemu-user
- name: Mount EESSI CernVM-FS pilot repository
uses: cvmfs-contrib/github-action-cvmfs@d4641d0d591c9a5c3be23835ced2fb648b44c04b # v3.1
with:
cvmfs_config_package: https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi_latest_all.deb
cvmfs_http_proxy: DIRECT
cvmfs_repositories: pilot.eessi-hpc.org
- name: Check compat layer in EESSI pilot repository
env:
EPREFIX: /cvmfs/pilot.eessi-hpc.org/versions/${{matrix.EESSI_VERSION}}/compat/linux/${{matrix.EESSI_ARCH}}
run: |
# trigger automount
echo '>> ls /cvmfs/pilot.eessi-hpc.org'
ls /cvmfs/pilot.eessi-hpc.org
# check which Stratum 1 we're connected to
echo '>> cvmfs_config stat -v pilot.eessi-hpc.org'
cvmfs_config stat -v pilot.eessi-hpc.org
echo '>> ls ${EPREFIX}/startprefix'
ls ${EPREFIX}/startprefix
# enter Prefix environment, list installed packages, and exit
# this magically works, even for non-x86_64 architectures, thanks to QEMU \o/
echo '>> ${EPREFIX}/startprefix <<< "which bash; qlist -IRv; exit"'
${EPREFIX}/startprefix <<< "which bash; qlist -IRv; exit"
- name: Set up Python
uses: actions/setup-python@13ae5bb136fac2878aff31522b9efb785519f984 # v4.3.0
with:
python-version: ${{matrix.python}}
architecture: x64
- name: Install ReFrame
run: |
pip install reframe-hpc requests
- name: Run ReFrame test suite
run: |
export EESSI_ARCH=${{matrix.EESSI_ARCH}}
export EESSI_OS=${{matrix.EESSI_OS}}
export EESSI_VERSION=${{matrix.EESSI_VERSION}}
reframe -r -v -c ./test/compat_layer.py