Skip to content

Update Github Workflows and add aarch64 testing #273

Update Github Workflows and add aarch64 testing

Update Github Workflows and add aarch64 testing #273

Workflow file for this run

name: Tests
on:
- push
- pull_request
permissions:
contents: read
jobs:
testsuite-hosted:
name: Test suite (x86_64)
strategy:
fail-fast: false
matrix:
compiler:
- gcc
- clang
fuse:
- fuse
- fuse3
os:
- ubuntu-22.04
- ubuntu-24.04
runs-on: ${{ matrix.os }}
steps:
- uses: ./.github/actions/build
with:
compiler: ${{ matrix.compiler }}
fuse: ${{ matrix.fuse }}
os: ${{ matrix.os }}
- uses: ./.github/actions/testsuite
with:
compiler: ${{ matrix.compiler }}
fuse: ${{ matrix.fuse }}
os: ${{ matrix.os }}
testsuite-self-hosted:
name: Test suite (aarch64)
strategy:
fail-fast: false
matrix:
compiler:
- gcc
- clang
fuse:
- fuse
- fuse3
os:
- ubuntu-22.04
- ubuntu-24.04
runs-on:
- self-hosted
- cpu-4
- mem-4G
- disk-50G
- arch-arm64
- image-${{ matrix.os }}
steps:
- uses: ./.github/actions/build
with:
compiler: ${{ matrix.compiler }}
fuse: ${{ matrix.fuse }}
os: ${{ matrix.os }}
- uses: ./.github/actions/testsuite
with:
compiler: ${{ matrix.compiler }}
fuse: ${{ matrix.fuse }}
os: ${{ matrix.os }}
upgrade-test:
name: Upgrade test
strategy:
fail-fast: false
matrix:
compiler:
- gcc
os:
- ubuntu-24.04
branch:
- stable-5.0
- stable-6.0
- main
runs-on: ${{ matrix.os }}
steps:
- uses: ./.github/actions/build
with:
compiler: ${{ matrix.compiler }}
fuse: ${{ matrix.fuse }}
os: ${{ matrix.os }}
- name: Build upstream head version
env:
CC: ${{ matrix.compiler }}
BASE_BRANCH: ${{ matrix.branch }}
run: |
git clone -b "${BASE_BRANCH}" https://github.com/lxc/lxcfs.git ../upstream-lxcfs
cd ../upstream-lxcfs
meson setup -Ddocs=false -Dtests=true -Dinit-script=systemd -Dprefix=/usr -Db_sanitize=address,undefined build/
meson compile -C build
- name: Test
env:
CC: ${{ matrix.compiler }}
WORKSPACE_PATH: ${{ github.workspace }}
run: |
UPSTREAM_LXCFS_TREE=$(realpath ${WORKSPACE_PATH}/../upstream-lxcfs)
NEW_LXCFS_TREE="${WORKSPACE_PATH}"
echo "${NEW_LXCFS_TREE}"
echo "${UPSTREAM_LXCFS_TREE}"
cd $UPSTREAM_LXCFS_TREE
[ -f build/tests/live-upgrade-test.sh ] || exit 0
echo 1 | sudo tee /sys/fs/cgroup/cpuset/cgroup.clone_children || true
sudo -E PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" build/tests/live-upgrade-test.sh "${NEW_LXCFS_TREE}"