12345678910111213141516171819202122232425262728293031323334353637 |
- #!/bin/bash --
- set -eu
- unset CLEANUP_LVM name DEFAULT_LVM_POOL retcode
- install_rpm_deps () {
- local applications
- applications=(lvm2 python3-docutils python3-pyyaml python3-jinja2
- python3-lxml btrfs-progs vim-common)
- rpm -q --quiet -- "${applications[@]}" ||
- sudo dnf -- install "${applications[@]}" ||
- : # we don’t actually care if this succeeds
- }
- if { command -pv rpm && command -pv dnf; }>/dev/null; then install_rpm_deps; fi
- CLEANUP_LVM=
- name=$(dirname "$0")
- if sudo --non-interactive "$name/ci/lvm-manage" setup-lvm vg$$/pool; then
- export DEFAULT_LVM_POOL=vg$$/pool
- CLEANUP_LVM=yes
- fi
- : "${PYTHON:=python3}"
- : "${TESTPYTHONPATH:=test-packages}"
- if [ -d ../core-qrexec/qrexec ] && ! $PYTHON -c 'import qrexec' 2>/dev/null; then
- PYTHONPATH="${PYTHONPATH-}:../core-qrexec"
- fi
- PYTHONPATH="${TESTPYTHONPATH}:${PYTHONPATH}"
- export PYTHONPATH
- "${PYTHON}" setup.py egg_info --egg-base "${TESTPYTHONPATH}"
- "${PYTHON}" -m coverage run --rcfile=ci/coveragerc -m qubes.tests.run "$@"
- retcode=$?
- if [ -n "$CLEANUP_LVM" ]; then
- sudo --non-interactive $(dirname "$0")/ci/lvm-manage cleanup-lvm "$DEFAULT_LVM_POOL"
- fi
- exit $retcode
|