Compare commits

..

40 commits

Author SHA1 Message Date
Packit
77a27601f2 [packit] 57 upstream release
Upstream tag: v57
Upstream commit: 7b0e1fe5

Signed-off-by: Packit <hello@packit.dev>
2022-05-25 13:32:50 +00:00
Packit
701dd036eb [packit] 56 upstream release
Upstream tag: v56
Upstream commit: ac2a194c

Signed-off-by: Packit <hello@packit.dev>
2022-05-11 13:37:19 +00:00
Packit
00efc79549 [packit] 53.1 upstream release
Upstream tag: v53.1
Upstream commit: 88fe0bce

Signed-off-by: Packit <hello@packit.dev>
2022-04-28 21:42:46 +00:00
Packit
83de71a5ae [packit] 55 upstream release
Upstream tag: v55
Upstream commit: 090f7685

Signed-off-by: Packit <hello@packit.dev>
2022-04-27 13:30:55 +00:00
David King
bebab57ae2 Rebuild against selinux-policy (#2071206) 2022-04-15 14:49:03 +01:00
Packit
d24bd2673f [packit] 54 upstream release
Upstream tag: v54
Upstream commit: 008d013e

Signed-off-by: Packit <hello@packit.dev>
2022-04-13 13:24:43 +00:00
Packit Service
dc402308dc [packit] 53 upstream release
Upstream tag: v53
Upstream commit: 31eed797

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-03-24 07:43:37 +00:00
Packit Service
a595abfc4e [packit] 52 upstream release
Upstream tag: v52
Upstream commit: d8f36b55

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-03-04 15:50:17 +00:00
Packit Service
c7e27575a8 [packit] 51 upstream release
Upstream tag: v51
Upstream commit: 00c6bf23

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-03-02 13:36:16 +00:00
Packit Service
ad8d9d6d68 [packit] 50 upstream release
Upstream tag: v50
Upstream commit: 6300a80c

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-02-27 19:25:24 +00:00
Packit Service
ad2a1c8c37 [packit] 50 upstream release
Upstream tag: v50
Upstream commit: 6300a80c

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-02-27 19:01:20 +00:00
Packit Service
a3b685f642 [packit] 49 upstream release
Upstream tag: v49
Upstream commit: 8f75d1e7

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-02-23 19:14:22 +00:00
Packit Service
1f5a00ef54 [packit] 48 upstream release
Upstream tag: v48
Upstream commit: e9d02a27

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-02-16 14:19:57 +00:00
Packit Service
5c8879a525 [packit] 47 upstream release
Upstream tag: v47
Upstream commit: 0f670829

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-02-02 17:05:04 +00:00
Packit Service
0ca60ea148 [packit] 46 upstream release
Upstream tag: v46
Upstream commit: bb30ffa0

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-01-19 15:00:39 +00:00
Packit Service
4bbd2e3d82 [packit] 45 upstream release
Upstream tag: v45
Upstream commit: 26a250ca

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2022-01-07 11:15:32 +00:00
Packit Service
0392525758 [packit] 44 upstream release
Upstream tag: v44
Upstream commit: a60af1e2

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-12-16 09:13:34 +00:00
Packit Service
83fd620a1e [packit] 43 upstream release
Upstream tag: v43
Upstream commit: 36356342

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-12-01 13:45:16 +00:00
Packit Service
0d5a1f5263 [packit] 42 upstream release
Upstream tag: v42
Upstream commit: 332e83b5

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-11-18 11:28:05 +00:00
Packit Service
e38a32aea2 [packit] 42 upstream release
Upstream tag: v42
Upstream commit: 332e83b5

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-11-17 10:54:17 +00:00
Packit Service
11a2915f07 [packit] 41 upstream release
Upstream tag: v41
Upstream commit: f7bf23fa

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-11-08 20:40:31 +00:00
Packit Service
71c3ac0eba [packit] 40 upstream release
Upstream tag: v40
Upstream commit: bd4ab1d3

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-11-03 15:28:23 +00:00
Packit Service
fecef44b1f [packit] 39 upstream release
Upstream tag: v39
Upstream commit: 00125e9f

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-10-06 12:36:18 +00:00
Packit Service
2d8c26f682 [packit] 38 upstream release
Upstream tag: v38
Upstream commit: 3678f3a4

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-09-27 06:55:21 +00:00
Packit Service
4b98faf44a [packit] 37 upstream release
Upstream tag: v37
Upstream commit: 7be47515

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-09-22 13:18:19 +00:00
Ondřej Budai
17769ce722
Update to 36 2021-09-09 12:22:07 +02:00
Martin Sehnoutka
c9d7373923 Update to 31 2021-08-20 15:16:17 +02:00
Christian Kellner
1f08b462b0 30 upstream release
Upstream tag: v30
Upstream commit: 35de3093

Signed-off-by: Christian Kellner <christian@kellner.me>
2021-07-23 14:46:13 +00:00
Christian Kellner
be272ef96f tests: pin down test manifest
To avoid cross-host building, i.e. building a new Fedora on an
older Fedora host, we pin down the test manifest.
2021-07-01 16:28:06 +02:00
Christian Kellner
cccaf70492 tests: add subset of the unit tests
Run the module unit tests.
2021-07-01 16:28:06 +02:00
Christian Kellner
2357c640c5 tests: update list of required packages 2021-07-01 16:28:06 +02:00
Christian Kellner
f20b26b316 tests: remove atomic tag
No needed anymore.
2021-07-01 16:28:06 +02:00
Christian Kellner
968e32a238 spec: fix author name and email
Replace msehnout with the name and email.
2021-07-01 16:28:06 +02:00
Martin Sehnoutka
208287efdd 29 upstream release 2021-06-21 12:33:12 +02:00
Christian Kellner
dd5548bf10 28 upstream release
New upstream release with fixes for the oci stage and official
support for the Fedora 35 runner.
2021-04-08 21:18:27 +02:00
Christian Kellner
d38dd0c342 Include patch to add Fedora 35 runner
Needed to actually run on rawhide (fedora 35).
2021-03-17 13:54:50 +01:00
Christian Kellner
579702d7b8 ci: fix and update image test
Use an up-to-date manifest from the upstream osbuild CI test data
and also specify an output directory, so that osbuild is actually
attempting to produce an image.
2021-03-17 13:54:50 +01:00
Christian Kellner
f11c8e9a09 27 upstream release
Various bug fixes related to the new container and installer stages
introdcued in version 25 and 26.
2021-03-17 13:54:50 +01:00
Christian Kellner
9b850580f2 26 upstream release
Support for building boot isos.
Grub stage gained support for 'saved_entry' to fix grub tooling.
2021-02-20 13:33:03 +01:00
Christian Kellner
a6d7bbbef2 25 upstream release
New upstream release, with a tech preview of the new manifest
format and new assembler-like stages that are needed to deliver
ostree commits contained in an oci archive.
2021-02-13 18:24:06 +01:00
22 changed files with 1343 additions and 38416 deletions

View file

@ -1 +0,0 @@
1

95
.gitignore vendored
View file

@ -55,98 +55,3 @@
/osbuild-53.1.tar.gz
/osbuild-56.tar.gz
/osbuild-57.tar.gz
/osbuild-58.tar.gz
/osbuild-59.tar.gz
/osbuild-60.tar.gz
/osbuild-61.tar.gz
/osbuild-62.tar.gz
/osbuild-63.tar.gz
/osbuild-64.tar.gz
/osbuild-65.tar.gz
/osbuild-66.tar.gz
/osbuild-67.tar.gz
/osbuild-68.tar.gz
/osbuild-69.tar.gz
/osbuild-70.tar.gz
/osbuild-71.tar.gz
/osbuild-72.tar.gz
/osbuild-73.tar.gz
/osbuild-74.tar.gz
/osbuild-75.tar.gz
/osbuild-76.tar.gz
/osbuild-77.tar.gz
/osbuild-78.tar.gz
/osbuild-79.tar.gz
/osbuild-80.tar.gz
/osbuild-81.tar.gz
/osbuild-82.tar.gz
/osbuild-83.tar.gz
/osbuild-84.tar.gz
/osbuild-85.tar.gz
/osbuild-86.tar.gz
/osbuild-87.tar.gz
/osbuild-88.tar.gz
/osbuild-89.tar.gz
/osbuild-90.tar.gz
/osbuild-91.tar.gz
/osbuild-92.tar.gz
/osbuild-93.tar.gz
/osbuild-94.tar.gz
/osbuild-95.tar.gz
/osbuild-96.tar.gz
/osbuild-97.tar.gz
/osbuild-98.tar.gz
/osbuild-99.tar.gz
/osbuild-100.tar.gz
/osbuild-101.tar.gz
/osbuild-102.tar.gz
/osbuild-103.tar.gz
/osbuild-104.tar.gz
/osbuild-105.tar.gz
/osbuild-106.tar.gz
/osbuild-109.tar.gz
/osbuild-110.tar.gz
/osbuild-111.tar.gz
/osbuild-112.tar.gz
/osbuild-113.tar.gz
/osbuild-114.tar.gz
/osbuild-115.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

View file

@ -2,7 +2,7 @@
specfile_path: osbuild.spec
files_to_sync:
synced_files:
- osbuild.spec
- .packit.yaml
@ -17,50 +17,45 @@ srpm_build_deps: []
actions:
get-current-version: bash -c "git describe --tags --abbrev=0 | sed 's|v||'"
# Handle only releases without a "dot" (e.g. v88.2), since "dot" releases should never be released to Fedora
# "dot" releases are used only for "backports" to RHEL.
upstream_tag_include: 'v\d+'
jobs:
- &copr
job: copr_build
- job: copr_build
trigger: pull_request
targets:
- 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
- epel-9-x86_64
- fedora-all-aarch64
- fedora-all-s390x
- fedora-all-ppc64le
- fedora-all
- <<: *copr
metadata:
targets:
- centos-stream-8-aarch64
- centos-stream-8-x86_64
- centos-stream-9-aarch64
- centos-stream-9-x86_64
- epel-8-aarch64
- epel-8-x86_64
- fedora-all-aarch64
- fedora-all-s390x
- fedora-all-ppc64le
- fedora-all
- job: copr_build
trigger: commit
branch: main
owner: "@osbuild" # copr repo namespace
project: osbuild # copr repo name so you can consume the builds
- <<: *copr
trigger: release
branch: main
owner: "@osbuild" # copr repo namespace
project: osbuild-stable # copr repo name so you can consume the builds
metadata:
branch: main
owner: "@osbuild" # copr repo namespace
project: osbuild # copr repo name so you can consume the builds
targets:
- centos-stream-8-aarch64
- centos-stream-8-x86_64
- centos-stream-9-aarch64
- centos-stream-9-x86_64
- epel-8-aarch64
- epel-8-x86_64
- fedora-all-aarch64
- fedora-all-s390x
- fedora-all-ppc64le
- fedora-all
- job: propose_downstream
trigger: release
dist_git_branches:
- fedora-all
metadata:
dist_git_branches:
- fedora-all
- job: koji_build
trigger: commit
dist_git_branches:
- fedora-all
- job: bodhi_update
trigger: commit
dist_git_branches:
- fedora-branched # rawhide updates are created automatically
metadata:
dist_git_branches:
- fedora-all

View file

@ -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

View file

@ -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.51.1.dev6+g1099056.

File diff suppressed because it is too large Load diff

View file

@ -1,10 +0,0 @@
summary: Run osbuild integration tests
prepare:
how: install
package:
- osbuild
discover:
how: fmf
filter: tag:integration-test
execute:
how: tmt

View file

@ -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

View file

@ -1 +1 @@
SHA512 (osbuild-169.tar.gz) = 981b6dae05d0f1fe0475549b5c72c2adafb656a7b9f3dbdf64fe660fe0852166bf327f654192f7f83583e2d559590b98dac8aba226e8203c3a0af274d51b33cf
SHA512 (osbuild-57.tar.gz) = e4e93c0824a450c510da6f4cc75d71c74db98178373c3578056617adfe22955657e31d816db4db744969b9c562e4e0a91253e4c81cd7e4b723d92c1d527696dc

1109
tests/fedora-boot.json Normal file

File diff suppressed because it is too large Load diff

View file

@ -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}"

View file

@ -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
View 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

View file

@ -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

View file

@ -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

View file

@ -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/"