Update to release 31
Also, add gating tests. Resolves: rhbz#1998197
This commit is contained in:
parent
72985b2bec
commit
77da1a3814
1
.gitignore
vendored
1
.gitignore
vendored
@ -33,3 +33,4 @@
|
|||||||
/cockpit-composer-27.tar.gz
|
/cockpit-composer-27.tar.gz
|
||||||
/cockpit-composer-28.tar.gz
|
/cockpit-composer-28.tar.gz
|
||||||
/cockpit-composer-30.tar.gz
|
/cockpit-composer-30.tar.gz
|
||||||
|
/cockpit-composer-31.tar.gz
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# This spec file has been automatically updated
|
# This spec file has been automatically updated
|
||||||
Version: 30
|
Version: 31
|
||||||
Release: 3%{?dist}
|
Release: 1%{?dist}
|
||||||
Name: cockpit-composer
|
Name: cockpit-composer
|
||||||
Summary: Composer GUI for use with Cockpit
|
Summary: Composer GUI for use with Cockpit
|
||||||
|
|
||||||
@ -43,6 +43,14 @@ cp -a io.weldr.cockpit-composer.metainfo.xml %{buildroot}/%{_datadir}/metainfo/
|
|||||||
%{_datadir}/metainfo/*
|
%{_datadir}/metainfo/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Aug 26 2021 Jacob Kozol <jkozol@redhat.com> - 31-1
|
||||||
|
- Add new ostree image types
|
||||||
|
- Improve loading state when waiting for api responses
|
||||||
|
- Improve notification system
|
||||||
|
- Improve test stability
|
||||||
|
- Update NPM dependencies
|
||||||
|
- Update translations
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 30-3
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 30-3
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
Related: rhbz#1991688
|
Related: rhbz#1991688
|
||||||
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-9
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (cockpit-composer-30.tar.gz) = 85396fbec4e8666ae2677b4d461e63973b1297b691dc3646168ef991792fa773ea42f2df3427285070c21eebdb9faea3fe05c44e39649f0f3bcb926f0ec57934
|
SHA512 (cockpit-composer-31.tar.gz) = 990cbf12a3f95ad3e9858eba69f000ade510ad9d08cfcf808f1d77b3c68c5a9ae22ad80ba2787f94d4834b03bef65e68b86e458d584263e4853ddfb5d06e89f9
|
||||||
|
1
tests/.fmf/version
Normal file
1
tests/.fmf/version
Normal file
@ -0,0 +1 @@
|
|||||||
|
1
|
4
tests/provision.fmf
Normal file
4
tests/provision.fmf
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
standard-inventory-qcow2:
|
||||||
|
qemu:
|
||||||
|
m: 4G
|
31
tests/run-test.sh
Executable file
31
tests/run-test.sh
Executable file
@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
cd $SOURCE
|
||||||
|
git init
|
||||||
|
make bots test/common machine
|
||||||
|
|
||||||
|
# only install a subset to save time/space
|
||||||
|
mv package.json .package.json
|
||||||
|
npm install chrome-remote-interface sizzle
|
||||||
|
mv .package.json package.json
|
||||||
|
|
||||||
|
. /etc/os-release
|
||||||
|
export TEST_OS="${ID}-${VERSION_ID/./-}"
|
||||||
|
|
||||||
|
RC=0
|
||||||
|
|
||||||
|
for t in test/verify/check-{blueprint,custom,dependence,package,service,source}
|
||||||
|
do
|
||||||
|
$t \
|
||||||
|
--enable-network \
|
||||||
|
--machine 127.0.0.1:22 \
|
||||||
|
--browser 127.0.0.1:9090 \
|
||||||
|
--verbose --trace \
|
||||||
|
|| RC=$?
|
||||||
|
done
|
||||||
|
|
||||||
|
echo $RC > "$LOGS/exitcode"
|
||||||
|
cp --verbose Test* "$LOGS" || true
|
||||||
|
# deliver test result via exitcode file
|
||||||
|
exit 0
|
33
tests/tests.yml
Normal file
33
tests/tests.yml
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
---
|
||||||
|
- hosts: localhost
|
||||||
|
roles:
|
||||||
|
- role: standard-test-source
|
||||||
|
tags:
|
||||||
|
- always
|
||||||
|
|
||||||
|
- role: standard-test-basic
|
||||||
|
tags:
|
||||||
|
- atomic
|
||||||
|
- classic
|
||||||
|
required_packages:
|
||||||
|
- cockpit-composer
|
||||||
|
- composer-cli
|
||||||
|
- nodejs
|
||||||
|
- git
|
||||||
|
- curl
|
||||||
|
- createrepo_c
|
||||||
|
- dnf-automatic
|
||||||
|
- firewalld
|
||||||
|
- git
|
||||||
|
- libvirt-daemon-config-network
|
||||||
|
- libvirt-python3
|
||||||
|
- make
|
||||||
|
- npm
|
||||||
|
- python3
|
||||||
|
- targetcli
|
||||||
|
- tlog
|
||||||
|
tests:
|
||||||
|
- verify:
|
||||||
|
dir: .
|
||||||
|
run: ./verify.sh
|
||||||
|
save-files: ["logs/*"]
|
65
tests/verify.sh
Executable file
65
tests/verify.sh
Executable file
@ -0,0 +1,65 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
source /etc/os-release
|
||||||
|
ARCH=$(uname -m)
|
||||||
|
# from standard-test-source
|
||||||
|
SOURCE="$(pwd)/source"
|
||||||
|
LOGS="$(pwd)/logs"
|
||||||
|
TESTS="$(pwd)/tests"
|
||||||
|
mkdir -p "$LOGS"
|
||||||
|
chmod a+w "$LOGS"
|
||||||
|
|
||||||
|
# This section is taken from https://github.com/osbuild/osbuild-composer/blob/main/schutzbot/mockbuild.sh
|
||||||
|
# chromium-headless is only available in EPEL for RHEL.
|
||||||
|
if [[ $ID == rhel || $ID == centos ]] && [[ ${VERSION_ID%.*} == 8 ]] && ! rpm -q epel-release; then
|
||||||
|
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
dnf config-manager --enable epel
|
||||||
|
elif [[ $ID == rhel || $ID == centos ]] && [[ ${VERSION_ID%.*} == 9 ]]; then
|
||||||
|
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
# replace the releasever 9 with 8 so that the epel repos can be found.
|
||||||
|
# taken from https://github.com/cockpit-project/cockpit
|
||||||
|
sed -i 's/$releasever/8/' /etc/yum.repos.d/epel*.repo
|
||||||
|
dnf config-manager --enable epel
|
||||||
|
fi
|
||||||
|
# HACK: chromium-headless ought to be enough, but greater than version 88 has a crash: https://bugs.chromium.org/p/chromium/issues/detail?id=1170634
|
||||||
|
dnf install -y chromium
|
||||||
|
|
||||||
|
# Taken from https://github.com/cockpit-project/cockpit-machines/commit/6206acd32cb125d54cb17be74afb60d45504e99f#diff-8bc7fea4b1a7acd44c6a752365847e961fa72cbb68efa39ed77ca406e9a5cac4
|
||||||
|
#HACK: unbreak rhel-9-0's default choice of 999999999 rounds, see https://bugzilla.redhat.com/show_bug.cgi?id=1993919
|
||||||
|
sed -ie 's/#SHA_CRYPT_MAX_ROUNDS 5000/SHA_CRYPT_MAX_ROUNDS 5000/' /etc/login.defs
|
||||||
|
|
||||||
|
# overriding osbuild-composer repo with nightly
|
||||||
|
mkdir -p /etc/osbuild-composer/repositories
|
||||||
|
cp $SOURCE/test/files/rhel-90.json /etc/osbuild-composer/repositories/rhel-90.json
|
||||||
|
|
||||||
|
# Make cockpit.socket and lorax-composer start
|
||||||
|
systemctl start cockpit.socket
|
||||||
|
systemctl start osbuild-composer.socket
|
||||||
|
|
||||||
|
# create user account for logging in
|
||||||
|
if ! id admin 2>/dev/null; then
|
||||||
|
useradd -c Administrator -G wheel admin
|
||||||
|
echo admin:foobar | chpasswd
|
||||||
|
fi
|
||||||
|
|
||||||
|
# create user account for running the test
|
||||||
|
if ! id runtest 2>/dev/null; then
|
||||||
|
useradd -c 'Test runner' runtest
|
||||||
|
# allow test to set up things on the machine
|
||||||
|
mkdir -p /root/.ssh
|
||||||
|
curl https://raw.githubusercontent.com/cockpit-project/bots/master/machine/identity.pub >> /root/.ssh/authorized_keys
|
||||||
|
chmod 600 /root/.ssh/authorized_keys
|
||||||
|
fi
|
||||||
|
chown -R runtest "$SOURCE"
|
||||||
|
|
||||||
|
# disable core dumps, we rather investigate them upstream where test VMs are accessible
|
||||||
|
echo core > /proc/sys/kernel/core_pattern
|
||||||
|
|
||||||
|
cp -r $SOURCE/test/files /home/admin
|
||||||
|
|
||||||
|
# Run tests as unprivileged user
|
||||||
|
su - -c "env SOURCE=$SOURCE LOGS=$LOGS $TESTS/run-test.sh" runtest
|
||||||
|
|
||||||
|
RC=$(cat $LOGS/exitcode)
|
||||||
|
exit ${RC:-1}
|
Loading…
Reference in New Issue
Block a user