mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-09 01:18:00 +03:00
1dfd308843
This stage will download build artifacts from both the libvirt and libvirt-perl (multi-project CI) builds, install all them on the custom runners and configures libvirt debug logging on the runners prior to executing the actual test suite. In case of a failure, libvirt and Avocado logs will be saved and published as pipeline artifacts. Signed-off-by: Erik Skultety <eskultet@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
100 lines
2.9 KiB
YAML
100 lines
2.9 KiB
YAML
.tests:
|
|
stage: integration_tests
|
|
before_script:
|
|
- mkdir "$SCRATCH_DIR"
|
|
- sudo dnf install -y libvirt-rpms/* libvirt-perl-rpms/*
|
|
- sudo pip3 install --prefix=/usr avocado-framework
|
|
- source /etc/os-release # in order to query the vendor-provided variables
|
|
- if test "$ID" = "centos" && test "$VERSION_ID" -lt 9 ||
|
|
test "$ID" = "fedora" && test "$VERSION_ID" -lt 35;
|
|
then
|
|
DAEMONS="libvirtd virtlogd virtlockd";
|
|
else
|
|
DAEMONS="virtproxyd virtqemud virtinterfaced virtsecretd virtstoraged virtnwfilterd virtnodedevd virtlogd virtlockd";
|
|
fi
|
|
- for daemon in $DAEMONS;
|
|
do
|
|
LOG_OUTPUTS="1:file:/var/log/libvirt/${daemon}.log";
|
|
LOG_FILTERS="3:remote 4:event 3:util.json 3:util.object 3:util.dbus 3:util.netlink 3:node_device 3:rpc 3:access 1:*";
|
|
sudo augtool set /files/etc/libvirt/${daemon}.conf/log_filters "$LOG_FILTERS" &>/dev/null;
|
|
sudo augtool set /files/etc/libvirt/${daemon}.conf/log_outputs "$LOG_OUTPUTS" &>/dev/null;
|
|
sudo systemctl --quiet stop ${daemon}.service;
|
|
sudo systemctl restart ${daemon}.socket;
|
|
done
|
|
- sudo virsh net-start default &>/dev/null || true;
|
|
script:
|
|
- mkdir logs
|
|
- cd "$SCRATCH_DIR"
|
|
- git clone --depth 1 https://gitlab.com/libvirt/libvirt-tck.git
|
|
- cd libvirt-tck
|
|
- sudo avocado --config avocado.config run --job-results-dir "$SCRATCH_DIR"/avocado
|
|
after_script:
|
|
- test "$CI_JOB_STATUS" = "success" && exit 0;
|
|
- test -e "$SCRATCH_DIR"/avocado && sudo mv "$SCRATCH_DIR"/avocado/latest/test-results logs/avocado;
|
|
- sudo mv /var/log/libvirt logs/libvirt
|
|
- sudo chown -R $(whoami):$(whoami) logs
|
|
variables:
|
|
SCRATCH_DIR: "/tmp/scratch"
|
|
artifacts:
|
|
name: logs
|
|
paths:
|
|
- logs
|
|
when: on_failure
|
|
|
|
|
|
centos-stream-8-tests:
|
|
extends: .tests
|
|
needs:
|
|
- x86_64-centos-stream-8
|
|
- project: libvirt/libvirt-perl
|
|
job: x86_64-centos-stream-8
|
|
ref: master
|
|
artifacts: true
|
|
variables:
|
|
# needed by libvirt-gitlab-executor
|
|
DISTRO: centos-stream-8
|
|
tags:
|
|
- redhat-vm-host
|
|
|
|
centos-stream-9-tests:
|
|
extends: .tests
|
|
needs:
|
|
- x86_64-centos-stream-9
|
|
- project: libvirt/libvirt-perl
|
|
job: x86_64-centos-stream-9
|
|
ref: master
|
|
artifacts: true
|
|
variables:
|
|
# needed by libvirt-gitlab-executor
|
|
DISTRO: centos-stream-9
|
|
tags:
|
|
- redhat-vm-host
|
|
|
|
fedora-34-tests:
|
|
extends: .tests
|
|
needs:
|
|
- x86_64-fedora-34
|
|
- project: libvirt/libvirt-perl
|
|
job: x86_64-fedora-34
|
|
ref: master
|
|
artifacts: true
|
|
variables:
|
|
# needed by libvirt-gitlab-executor
|
|
DISTRO: fedora-34
|
|
tags:
|
|
- redhat-vm-host
|
|
|
|
fedora-35-tests:
|
|
extends: .tests
|
|
needs:
|
|
- x86_64-fedora-35
|
|
- project: libvirt/libvirt-perl
|
|
job: x86_64-fedora-35
|
|
ref: master
|
|
artifacts: true
|
|
variables:
|
|
# needed by libvirt-gitlab-executor
|
|
DISTRO: fedora-35
|
|
tags:
|
|
- redhat-vm-host
|