Compare commits
39 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4295c0279e | ||
|
|
d674341701 | ||
|
|
216095729c | ||
|
|
aeaeca3ed7 | ||
|
|
60f17504cc | ||
|
|
b113b1713f | ||
|
|
b0eda6c14a | ||
|
|
57e8e43dbd | ||
|
|
eac41ea711 | ||
|
|
51becc0964 | ||
|
|
56e5420efe | ||
|
|
b767325b18 | ||
|
|
7ab6a0d40e | ||
|
|
e009d08025 | ||
|
|
f6f54a495b | ||
|
|
bc4d906d03 | ||
|
|
e6f60a667c | ||
|
|
6301583f9c | ||
|
|
c4f27244bd | ||
|
|
94d1933791 | ||
|
|
6ae30a7f52 | ||
|
|
d8d5bccb54 | ||
|
|
7483d8a36b | ||
|
|
d5d670ba6d | ||
|
|
5460052bac | ||
|
|
8c0510a4e7 | ||
|
|
527cd1d02a | ||
|
|
b5aaeef0ef | ||
|
|
491adb5a37 | ||
|
|
89c103486c | ||
|
|
5b1f5426fe | ||
|
|
0cfb440709 | ||
|
|
0b68ca7498 | ||
|
|
d415816db1 | ||
|
|
719e055756 | ||
|
|
61d789a5d9 | ||
|
|
cf41aad17c |
||
|
|
f6f1393fa2 | ||
|
|
a97d4777fb |
24 changed files with 2027 additions and 37721 deletions
|
|
@ -1 +0,0 @@
|
|||
1
|
||||
39
.gitignore
vendored
39
.gitignore
vendored
|
|
@ -104,6 +104,7 @@
|
|||
/osbuild-104.tar.gz
|
||||
/osbuild-105.tar.gz
|
||||
/osbuild-106.tar.gz
|
||||
/osbuild-108.tar.gz
|
||||
/osbuild-109.tar.gz
|
||||
/osbuild-110.tar.gz
|
||||
/osbuild-111.tar.gz
|
||||
|
|
@ -111,42 +112,6 @@
|
|||
/osbuild-113.tar.gz
|
||||
/osbuild-114.tar.gz
|
||||
/osbuild-115.tar.gz
|
||||
/osbuild-116.tar.gz
|
||||
/osbuild-117.tar.gz
|
||||
/osbuild-118.tar.gz
|
||||
/osbuild-119.tar.gz
|
||||
/osbuild-122.tar.gz
|
||||
/osbuild-123.tar.gz
|
||||
/osbuild-124.tar.gz
|
||||
/osbuild-125.tar.gz
|
||||
/osbuild-126.tar.gz
|
||||
/osbuild-129.tar.gz
|
||||
/osbuild-130.tar.gz
|
||||
/osbuild-131.tar.gz
|
||||
/osbuild-132.tar.gz
|
||||
/osbuild-135.tar.gz
|
||||
/osbuild-136.tar.gz
|
||||
/osbuild-137.tar.gz
|
||||
/osbuild-138.tar.gz
|
||||
/osbuild-139.tar.gz
|
||||
/osbuild-140.tar.gz
|
||||
/osbuild-141.tar.gz
|
||||
/osbuild-142.tar.gz
|
||||
/osbuild-143.tar.gz
|
||||
/osbuild-144.tar.gz
|
||||
/osbuild-146.tar.gz
|
||||
/osbuild-147.tar.gz
|
||||
/osbuild-149.tar.gz
|
||||
/osbuild-151.tar.gz
|
||||
/osbuild-152.tar.gz
|
||||
/osbuild-153.tar.gz
|
||||
/osbuild-155.tar.gz
|
||||
/osbuild-156.tar.gz
|
||||
/osbuild-158.tar.gz
|
||||
/osbuild-159.tar.gz
|
||||
/osbuild-161.tar.gz
|
||||
/osbuild-162.tar.gz
|
||||
/osbuild-163.tar.gz
|
||||
/osbuild-164.tar.gz
|
||||
/osbuild-166.tar.gz
|
||||
/osbuild-167.tar.gz
|
||||
/osbuild-169.tar.gz
|
||||
|
|
|
|||
|
|
@ -26,14 +26,10 @@ jobs:
|
|||
job: copr_build
|
||||
trigger: pull_request
|
||||
targets:
|
||||
- centos-stream-8-aarch64
|
||||
- centos-stream-8-x86_64
|
||||
- centos-stream-9-aarch64
|
||||
- centos-stream-9-s390x
|
||||
- centos-stream-9-pcc64le
|
||||
- centos-stream-9-x86_64
|
||||
- centos-stream-10-aarch64
|
||||
- centos-stream-10-s390x
|
||||
- centos-stream-10-ppc64le
|
||||
- centos-stream-10-x86_64
|
||||
- epel-8-aarch64
|
||||
- epel-8-x86_64
|
||||
- epel-9-aarch64
|
||||
|
|
|
|||
23
0001-runners-add-Fedora-36-runner.patch
Normal file
23
0001-runners-add-Fedora-36-runner.patch
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
From e8c219036302817882d469400b08cbac4b93a781 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Kellner <christian@kellner.me>
|
||||
Date: Fri, 20 Aug 2021 14:18:28 +0200
|
||||
Subject: [PATCH 1/3] runners: add Fedora 36 runner
|
||||
|
||||
New `org.osbuild.fedora36` which is re-using the f30 runner.
|
||||
Needed since Fedora 36 was branched already.
|
||||
---
|
||||
runners/org.osbuild.fedora36 | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
create mode 120000 runners/org.osbuild.fedora36
|
||||
|
||||
diff --git a/runners/org.osbuild.fedora36 b/runners/org.osbuild.fedora36
|
||||
new file mode 120000
|
||||
index 0000000..d46777b
|
||||
--- /dev/null
|
||||
+++ b/runners/org.osbuild.fedora36
|
||||
@@ -0,0 +1 @@
|
||||
+org.osbuild.fedora30
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.21.1 (Apple Git-122.3)
|
||||
|
||||
22
0001-runners-add-fedora38.patch
Normal file
22
0001-runners-add-fedora38.patch
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
From 135b20a487c2b7435e296c9cfc7f96a826ba2d19 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ond=C5=99ej=20Budai?= <ondrej@budai.cz>
|
||||
Date: Mon, 15 Aug 2022 14:13:55 +0200
|
||||
Subject: [PATCH] runners: add fedora38
|
||||
|
||||
It's that time of the year again.
|
||||
---
|
||||
runners/org.osbuild.fedora38 | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
create mode 120000 runners/org.osbuild.fedora38
|
||||
|
||||
diff --git a/runners/org.osbuild.fedora38 b/runners/org.osbuild.fedora38
|
||||
new file mode 120000
|
||||
index 0000000..d46777b
|
||||
--- /dev/null
|
||||
+++ b/runners/org.osbuild.fedora38
|
||||
@@ -0,0 +1 @@
|
||||
+org.osbuild.fedora30
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.37.2
|
||||
|
||||
40
PR1827.patch
40
PR1827.patch
|
|
@ -1,40 +0,0 @@
|
|||
From 54c0a2cce45ad385d793d494e62222cd254a866a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Hozza?= <thozza@redhat.com>
|
||||
Date: Wed, 31 Jul 2024 18:12:24 +0200
|
||||
Subject: [PATCH] Test/dnf4.mark: adjust the test for markings used by DNF5
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
When I rolled back from using 'dnf4', to check package markings, to
|
||||
using 'dnf', I didn't verify the test case on Fedora Rawhide with DNF5.
|
||||
It turns out that the strings reported by DNF5 differ and make the test
|
||||
case fail. This time I tested the change on Fedora Rawhide with DNF5 and
|
||||
it works.
|
||||
|
||||
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
|
||||
---
|
||||
test/run/test_stages.py | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/run/test_stages.py b/test/run/test_stages.py
|
||||
index dc91bf8f..7fec10c8 100644
|
||||
--- a/test/run/test_stages.py
|
||||
+++ b/test/run/test_stages.py
|
||||
@@ -565,9 +565,11 @@ class TestStages(test.TestBase):
|
||||
raise
|
||||
|
||||
if package == "dnf":
|
||||
- assert mark == "user"
|
||||
+ # dnf4 marks packages as 'user', while dnf5 marks them as 'User'
|
||||
+ assert mark in ("user", "User")
|
||||
else:
|
||||
- assert mark == "unknown"
|
||||
+ # dnf4 marks packages as 'unknown', while dnf5 marks them as 'External User'
|
||||
+ assert mark in ("unknown", "External User")
|
||||
|
||||
@unittest.skipUnless(test.TestBase.has_filesystem_support("btrfs"), "btrfs needed")
|
||||
def test_btrfs(self):
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 1.14.0.post1.dev2+g6506c7467.
|
||||
The file was generated using packit 0.96.0.
|
||||
|
|
|
|||
2608
osbuild.spec
2608
osbuild.spec
File diff suppressed because it is too large
Load diff
|
|
@ -1,10 +0,0 @@
|
|||
summary: Run osbuild integration tests
|
||||
prepare:
|
||||
how: install
|
||||
package:
|
||||
- osbuild
|
||||
discover:
|
||||
how: fmf
|
||||
filter: tag:integration-test
|
||||
execute:
|
||||
how: tmt
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
summary: Run osbuild unit tests from dist-git sources
|
||||
prepare:
|
||||
how: install
|
||||
package:
|
||||
- git
|
||||
- make
|
||||
- osbuild
|
||||
discover:
|
||||
how: fmf
|
||||
dist-git-source: true
|
||||
filter: tag:unit-test
|
||||
execute:
|
||||
how: tmt
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (osbuild-169.tar.gz) = 981b6dae05d0f1fe0475549b5c72c2adafb656a7b9f3dbdf64fe660fe0852166bf327f654192f7f83583e2d559590b98dac8aba226e8203c3a0af274d51b33cf
|
||||
SHA512 (osbuild-118.tar.gz) = 8004fead5783fe7e9ed468fe4a7eaebd7df4368f83d44374eba5dbaf71d711dddfb52ba43c49f98414b679c5513a2585e0b3c5bcd686c3a856867e6a8322a20f
|
||||
|
|
|
|||
1109
tests/fedora-boot.json
Normal file
1109
tests/fedora-boot.json
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,52 +0,0 @@
|
|||
#!/usr/bin/bash
|
||||
set -euxo pipefail
|
||||
|
||||
MANIFESTS_DIR=$1
|
||||
# check that MANIFESTS_DIR is a directory
|
||||
if [ ! -d "$MANIFESTS_DIR" ]; then
|
||||
echo "Error: $MANIFESTS_DIR is not a directory"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# ensure that we are running on x86_64 architecture
|
||||
if [ "$(uname -m)" != "x86_64" ]; then
|
||||
echo "Error: this script is only supported on x86_64 architecture"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
. /etc/os-release
|
||||
|
||||
case "${ID}-${VERSION_ID}" in
|
||||
fedora-*)
|
||||
IMAGE_MANIFEST="${MANIFESTS_DIR}/fedora.json"
|
||||
;;
|
||||
rhel-8.*)
|
||||
IMAGE_MANIFEST="${MANIFESTS_DIR}/rhel-8.json"
|
||||
;;
|
||||
rhel-9.*)
|
||||
IMAGE_MANIFEST="${MANIFESTS_DIR}/rhel-9.json"
|
||||
;;
|
||||
centos-8)
|
||||
IMAGE_MANIFEST="${MANIFESTS_DIR}/centos-8.json"
|
||||
;;
|
||||
centos-9)
|
||||
IMAGE_MANIFEST="${MANIFESTS_DIR}/centos-9.json"
|
||||
;;
|
||||
centos-10)
|
||||
IMAGE_MANIFEST="${MANIFESTS_DIR}/centos-10.json"
|
||||
;;
|
||||
*)
|
||||
echo "Error: unsupported OS: ${ID}-${VERSION_ID}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
OUTPUT_DIR=/var/tmp/osbuild-output
|
||||
STORE_DIR=/var/tmp/osbuild-store
|
||||
sudo mkdir -p "${OUTPUT_DIR}"
|
||||
sudo mkdir -p "${STORE_DIR}"
|
||||
|
||||
# all the images are built with qcow2 format, so export it
|
||||
EXPORT_PIPELINE="qcow2"
|
||||
|
||||
sudo osbuild --output-directory "${OUTPUT_DIR}" --store "${STORE_DIR}" --export "${EXPORT_PIPELINE}" "${IMAGE_MANIFEST}"
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
summary: Build simple image using osbuild
|
||||
tag: integration-test
|
||||
duration: 1h
|
||||
test: ./build-images.sh ./manifests
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
25
tests/tests.yml
Normal file
25
tests/tests.yml
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
---
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: standard-test-source
|
||||
tags:
|
||||
- always
|
||||
- role: standard-test-basic
|
||||
tags:
|
||||
- classic
|
||||
required_packages:
|
||||
- osbuild
|
||||
- git
|
||||
- make
|
||||
- python3-mako
|
||||
- python3-pytest
|
||||
tests:
|
||||
- smoke:
|
||||
dir: smoke
|
||||
run: osbuild --help
|
||||
- unit:
|
||||
dir: source
|
||||
run: python3 -m pytest test/mod
|
||||
- image:
|
||||
dir: tests
|
||||
run: osbuild fedora-boot.json --store=/var/tmp/osbuild/store --output-directory=/var/tmp/osbuild/out
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
summary: Run osbuild unit tests from dist-git sources
|
||||
tag: unit-test
|
||||
duration: 4h
|
||||
test: ./prep-host-environment.sh; sudo chcon $(matchpathcon -n /usr/bin/osbuild) ./run-unit-tests.sh; ./run-unit-tests.sh
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
#!/usr/bin/bash
|
||||
# Prepare the host environment for running the osbuild unit tests.
|
||||
# This includes installing missing dependencies and tools.
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
source /etc/os-release
|
||||
|
||||
# Move to the checked out git repo with the test plans
|
||||
# this should be the root of the dist-git repo
|
||||
cd "${TMT_TREE}"
|
||||
|
||||
# install all test dependencies
|
||||
sudo dnf install -y \
|
||||
rpmdevtools \
|
||||
python3-mako \
|
||||
python3-pip \
|
||||
rpm-ostree \
|
||||
dosfstools \
|
||||
gdisk \
|
||||
python3-tomli-w
|
||||
sudo dnf builddep -y osbuild.spec
|
||||
|
||||
# Install pytst from pip, because the version in some RHEL / CentOS releases is too old
|
||||
sudo pip3 install pytest
|
||||
|
||||
# Make sure that /usr/lib/systemd/boot/efi/linuxx64.efi.stub is available to enable pe32p tests
|
||||
case "${ID}-${VERSION_ID}" in
|
||||
rhel-8.* | centos-8)
|
||||
sudo dnf install -y systemd-udev
|
||||
;;
|
||||
*)
|
||||
sudo dnf install -y systemd-boot-unsigned
|
||||
;;
|
||||
esac
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
#!/usr/bin/bash
|
||||
# Execute osbuild unit tests from a checked out dist-git repo
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
source /etc/os-release
|
||||
|
||||
# The 'test/run/test_assemblers.py::test_tar' test case uses system tar to extract the built tar archive.
|
||||
# However, files in the tar archive can have SELinux context not present in the system policy. Therefore,
|
||||
# in order for the system tar to be able to set it when extracting the archive, it must be labeled with
|
||||
# 'install_exec_t' type.
|
||||
|
||||
ORIGINAL_TAR_CONTEXT="$(matchpathcon -n "$(which tar)")"
|
||||
sudo chcon "system_u:object_r:install_exec_t:s0" "$(which tar)"
|
||||
function restore_tar_context() {
|
||||
sudo chcon "${ORIGINAL_TAR_CONTEXT}" "$(which tar)"
|
||||
}
|
||||
trap restore_tar_context EXIT
|
||||
|
||||
# Run the unit tests
|
||||
# Note:
|
||||
# - Ignore the boot test, because it requires qemu-system-x86_64 not available on all distributions.
|
||||
# - Ignore source code tests, which run linters, since we can't ensure that all linters are available
|
||||
# and of the same version as in upstream.
|
||||
# - Explicitly mark btrfs as unsupported on CentOS / RHEL
|
||||
|
||||
if [ "${ID}" == "centos" ] || [ "${ID}" == "rhel" ]; then
|
||||
UNSUPPORTED_FS="--unsupported-fs btrfs"
|
||||
fi
|
||||
|
||||
TEST_SELECTION_EXPR="not (TestBoot and boot)"
|
||||
|
||||
# disable some tests on RHEL-8
|
||||
if ([ "${ID}" == "rhel" ] || [ "${ID}" == "centos" ]) && [ "${VERSION_ID%%.*}" == "8" ]; then
|
||||
# qemu-img info in RHEL-8 produces "raw" as the image format for "vdi" images, which causes tests to fail. Skip it.
|
||||
TEST_SELECTION_EXPR="${TEST_SELECTION_EXPR} and not (test_qemu[ext4-vdi] or test_qemu[xfs-vdi])"
|
||||
TEST_SELECTION_EXPR="${TEST_SELECTION_EXPR} and not (TestStages and test_qemu)"
|
||||
fi
|
||||
|
||||
# Move to the directory with sources
|
||||
cd "${TMT_SOURCE_DIR}"
|
||||
|
||||
# Extract the Source0 basename without extension
|
||||
SRC_DIR=$(spectool --source 0 osbuild.spec | sed 's/.\+\(osbuild-[0-9]\+\)\.tar\.gz/\1/')
|
||||
|
||||
# Move to the extracted sources directory (patches are applied by default)
|
||||
cd "${SRC_DIR}"
|
||||
|
||||
sudo python3 -m pytest \
|
||||
--rootdir "$(pwd)" \
|
||||
--ignore "$(pwd)/test/src" \
|
||||
${UNSUPPORTED_FS:-} \
|
||||
-k "${TEST_SELECTION_EXPR}" \
|
||||
-v \
|
||||
"$(pwd)/test/"
|
||||
Loading…
Add table
Add a link
Reference in a new issue