WIP: Bug fixes and rebase for 105+ #2

Closed
pastalian wants to merge 0 commits from pastalian/osbuild-composer:bug-fix-and-rebase into a9-beta
5 changed files with 1258 additions and 189 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/osbuild-composer-149.tar.gz
SOURCES/osbuild-composer-101.tar.gz

View File

@ -1 +1 @@
ea59dc56a63899e6efb74dbc8b82ffa25012fbe3 SOURCES/osbuild-composer-149.tar.gz
0feb86b5dcd146ce5b87816ae482eb50ed507c16 SOURCES/osbuild-composer-101.tar.gz

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,25 @@
From a4435c48480b969785d9afbec7ad3657db24f43b Mon Sep 17 00:00:00 2001
From: eabdullin <ed.abdullin.1@gmail.com>
Date: Thu, 28 Mar 2024 13:12:22 +0300
Subject: [PATCH] Remove libreport-rhel-anaconda-bugzilla from anaconda
packageset
---
vendor/github.com/osbuild/images/pkg/distro/rhel8/bare_metal.go | 1 -
1 file changed, 1 deletion(-)
diff --git a/vendor/github.com/osbuild/images/pkg/distro/rhel/rhel8/bare_metal.go b/vendor/github.com/osbuild/images/pkg/distro/rhel/rhel8/bare_metal.go
index 0d5fbe066..1fbbed351 100644
--- a/vendor/github.com/osbuild/images/pkg/distro/rhel/rhel8/bare_metal.go
+++ b/vendor/github.com/osbuild/images/pkg/distro/rhel/rhel8/bare_metal.go
@@ -228,7 +228,6 @@ func anacondaPackageSet(t *rhel.ImageType) rpmmd.PackageSet {
"libibverbs",
"libreport-plugin-bugzilla",
"libreport-plugin-reportuploader",
- "libreport-rhel-anaconda-bugzilla",
"librsvg2",
"linux-firmware",
"lklug-fonts",
--
2.39.3 (Apple Git-146)

View File

@ -8,11 +8,11 @@
%bcond_with relax_requires
# The minimum required osbuild version
%global min_osbuild_version 157
%global min_osbuild_version 109
%global goipath github.com/osbuild/osbuild-composer
Version: 149
Version: 101
%gometa
@ -36,6 +36,9 @@ License: Apache-2.0
URL: %{gourl}
Source0: %{gosource}
Patch100: 0001-AlmaLinux-support-patch.patch
Patch101: 0001-Remove-libreport-rhel-anaconda-bugzilla-from-anacond.patch
BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
BuildRequires: systemd
@ -85,10 +88,11 @@ export PATH=$PWD/_bin${PATH:+:$PATH}
export GOPATH=$GO_BUILD_PATH:%{gopath}
export GOFLAGS+=" -mod=vendor"
%endif
# Fedora and RHEL versions disable Go modules by default, but we want to use them.
# Unconditionally undefine the macro which disables it to use the default behavior.
%if 0%{?fedora}
# Fedora disables Go modules by default, but we want to use them.
# Undefine the macro which disables it to use the default behavior.
%undefine gomodulesmode
%endif
# btrfs-progs-devel is not available on RHEL
%if 0%{?rhel}
@ -105,7 +109,8 @@ export LDFLAGS="${LDFLAGS} -X 'github.com/osbuild/osbuild-composer/internal/comm
%gobuild ${GOTAGS:+-tags=$GOTAGS} -o _bin/osbuild-composer %{goipath}/cmd/osbuild-composer
%gobuild ${GOTAGS:+-tags=$GOTAGS} -o _bin/osbuild-worker %{goipath}/cmd/osbuild-worker
%gobuild ${GOTAGS:+-tags=$GOTAGS} -o _bin/osbuild-worker-executor %{goipath}/cmd/osbuild-worker-executor
%gobuild ${GOTAGS:+-tags=$GOTAGS} -o _bin/osbuild-jobsite-manager %{goipath}/cmd/osbuild-jobsite-manager
%gobuild ${GOTAGS:+-tags=$GOTAGS} -o _bin/osbuild-jobsite-builder %{goipath}/cmd/osbuild-jobsite-builder
make man
@ -114,16 +119,20 @@ make man
# Build test binaries with `go test -c`, so that they can take advantage of
# golang's testing package. The golang rpm macros don't support building them
# directly. Thus, do it manually, taking care to also include a build id.
#
# On Fedora, also turn off go modules and set the path to the one into which
# the golang-* packages install source code.
%if 0%{?fedora}
export GO111MODULE=off
export GOPATH=%{gobuilddir}:%{gopath}
%endif
TEST_LDFLAGS="${LDFLAGS:-} -B 0x$(od -N 20 -An -tx1 -w100 /dev/urandom | tr -d ' ')"
%if 0%{?rhel}
GOTAGS="${GOTAGS:+$GOTAGS,}rhel%{rhel}"
%endif
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-composer-cli-tests %{goipath}/cmd/osbuild-composer-cli-tests
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-dnf-json-tests %{goipath}/cmd/osbuild-dnf-json-tests
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-weldr-tests %{goipath}/internal/client/
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-image-tests %{goipath}/cmd/osbuild-image-tests
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-auth-tests %{goipath}/cmd/osbuild-auth-tests
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-koji-tests %{goipath}/cmd/osbuild-koji-tests
go test -c -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-composer-dbjobqueue-tests %{goipath}/cmd/osbuild-composer-dbjobqueue-tests
@ -136,76 +145,23 @@ go build -tags="integration${GOTAGS:+,$GOTAGS}" -ldflags="${TEST_LDFLAGS}" -o _b
install -m 0755 -vd %{buildroot}%{_libexecdir}/osbuild-composer
install -m 0755 -vp _bin/osbuild-composer %{buildroot}%{_libexecdir}/osbuild-composer/
install -m 0755 -vp _bin/osbuild-worker %{buildroot}%{_libexecdir}/osbuild-composer/
install -m 0755 -vp _bin/osbuild-worker-executor %{buildroot}%{_libexecdir}/osbuild-composer/
install -m 0755 -vp _bin/osbuild-jobsite-manager %{buildroot}%{_libexecdir}/osbuild-composer/
install -m 0755 -vp _bin/osbuild-jobsite-builder %{buildroot}%{_libexecdir}/osbuild-composer/
# Only include repositories for the distribution and release
install -m 0755 -vd %{buildroot}%{_datadir}/osbuild-composer/repositories
# CentOS also defines rhel so we check for centos first
%if 0%{?almalinux}
# AL10 support all AL versions
%if 0%{?almalinux} >= 10
install -m 0644 -vp vendor/github.com/osbuild/images/data/repositories/almalinux* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%if 0%{?almalinux} >= 9
install -m 0644 -vp repositories/almalinux-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%else
# AL8 supports in AL9 and AL8
install -m 0644 -vp vendor/github.com/osbuild/images/data/repositories/almalinux-8* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%if 0%{?rhel} == 9
install -m 0644 -vp vendor/github.com/osbuild/images/data/repositories/almalinux-9* %{buildroot}%{_datadir}/osbuild-composer/repositories/
install -m 0644 -vp repositories/almalinux-8* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%endif
%endif
%else
# Check for CentOS
%if 0%{?centos}
# Latest CentOS supports building all CentOS versions
%if 0%{?centos} >= 10
install -m 0644 -vp vendor/github.com/osbuild/images/data/repositories/centos-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%else
# All other CentOS versions support building for the same version
install -m 0644 -vp vendor/github.com/osbuild/images/data/repositories/centos-%{centos}* %{buildroot}%{_datadir}/osbuild-composer/repositories/
# centos-stream-* are symlinks
cp -a repositories/centos-stream-%{centos}* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%endif
%else
%if 0%{?rhel}
# RHEL 10 supports building all RHEL versions
%if 0%{?rhel} >= 10
for REPO_FILE in $(ls vendor/github.com/osbuild/images/data/repositories/rhel-* ); do
install -m 0644 -vp ${REPO_FILE} %{buildroot}%{_datadir}/osbuild-composer/repositories/$(basename ${REPO_FILE})
done
# RHEL-8 auxiliary key is signed using SHA-1, which is not enabled by default on RHEL-10 and later
for REPO_FILE in $(ls repositories/rhel-8*-no-aux-key.json); do
install -m 0644 -vp ${REPO_FILE} %{buildroot}%{_datadir}/osbuild-composer/repositories/$(basename ${REPO_FILE} | sed 's/-no-aux-key//g')
done
%else
# All other RHEL versions support building for the same version
for REPO_FILE in $(ls vendor/github.com/osbuild/images/data/repositories/rhel-%{rhel}* ); do
install -m 0644 -vp ${REPO_FILE} %{buildroot}%{_datadir}/osbuild-composer/repositories/$(basename ${REPO_FILE})
done
# RHEL 9 supports building also for RHEL 8
%if 0%{?rhel} == 9
for REPO_FILE in $(ls vendor/github.com/osbuild/images/data/repositories/rhel-8* ); do
install -m 0644 -vp ${REPO_FILE} %{buildroot}%{_datadir}/osbuild-composer/repositories/$(basename ${REPO_FILE})
done
%endif
%endif
%endif
%endif
%endif
# Fedora can build for all included fedora releases
%if 0%{?fedora}
install -m 0644 -vp vendor/github.com/osbuild/images/data/repositories/fedora-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
install -m 0644 -vp repositories/fedora-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%endif
install -m 0755 -vd %{buildroot}%{_unitdir}
@ -225,6 +181,7 @@ install -m 0755 -vd %{buildroot}%
install -m 0755 -vp _bin/osbuild-composer-cli-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-weldr-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-dnf-json-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-image-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-auth-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-koji-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-composer-dbjobqueue-tests %{buildroot}%{_libexecdir}/osbuild-composer-test/
@ -234,6 +191,7 @@ install -m 0755 -vp tools/define-compose-url.sh %{buildroot}%
install -m 0755 -vp tools/provision.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/gen-certs.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/gen-ssh.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/image-info %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/run-koji-container.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/koji-compose.py %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/libvirt_test.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
@ -257,6 +215,9 @@ install -m 0644 -vp test/data/ansible/* %{buildroot}%
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/azure
install -m 0644 -vp test/data/azure/* %{buildroot}%{_datadir}/tests/osbuild-composer/azure/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/manifests
install -m 0644 -vp test/data/manifests/* %{buildroot}%{_datadir}/tests/osbuild-composer/manifests/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/cloud-init
install -m 0644 -vp test/data/cloud-init/* %{buildroot}%{_datadir}/tests/osbuild-composer/cloud-init/
@ -285,20 +246,22 @@ install -m 0644 -vp test/data/x509/* %{buildroot}%
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/schemas
install -m 0644 -vp pkg/jobqueue/dbjobqueue/schemas/* %{buildroot}%{_datadir}/tests/osbuild-composer/schemas/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/rhel-upgrade
install -m 0644 -vp test/data/rhel-upgrade/* %{buildroot}%{_datadir}/tests/osbuild-composer/rhel-upgrade/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/upgrade8to9
install -m 0644 -vp test/data/upgrade8to9/* %{buildroot}%{_datadir}/tests/osbuild-composer/upgrade8to9/
%endif
%check
export GOFLAGS="-buildmode=pie"
%if 0%{?rhel}
export GOFLAGS+=" -tags=exclude_graphdriver_btrfs"
%endif
export GOFLAGS+=" -mod=vendor -tags=exclude_graphdriver_btrfs"
export GOPATH=$PWD/_build:%{gopath}
# cd inside GOPATH, otherwise go with GO111MODULE=off ignores vendor directory
cd $PWD/_build/src/%{goipath}
%gotest ./...
%else
%gocheck
%endif
%post
%systemd_post osbuild-composer.service osbuild-composer.socket osbuild-composer-api.socket osbuild-composer-prometheus.socket osbuild-remote-worker.socket
@ -324,9 +287,6 @@ cd $PWD/_build/src/%{goipath}
%package core
Summary: The core osbuild-composer binary
Requires: osbuild-depsolve-dnf >= %{min_osbuild_version}
# This version needs to get bumped everytime the osbuild-depsolve-dnf json
# API changes in incompatible ways
Requires: osbuild-dnf-json-api = 8
Provides: %{name}-dnf-json = %{version}-%{release}
Obsoletes: %{name}-dnf-json < %{version}-%{release}
@ -354,7 +314,8 @@ The worker for osbuild-composer
%files worker
%{_libexecdir}/osbuild-composer/osbuild-worker
%{_libexecdir}/osbuild-composer/osbuild-worker-executor
%{_libexecdir}/osbuild-composer/osbuild-jobsite-manager
%{_libexecdir}/osbuild-composer/osbuild-jobsite-builder
%{_unitdir}/osbuild-worker@.service
%{_unitdir}/osbuild-remote-worker@.service
@ -420,11 +381,7 @@ Requires: httpd
Requires: mod_ssl
Requires: openssl
Requires: firewalld
# podman-plugins has been deprecated since podman version 5.0.0,
# which is in Fedora 40+ and in c10s / el10
%if (0%{?rhel} && 0%{?rhel} < 10) || (0%{?fedora} && 0%{?fedora} < 40)
Requires: podman-plugins
%endif
Requires: dnf-plugins-core
Requires: skopeo
Requires: make
@ -451,110 +408,9 @@ Integration tests to be run on a pristine-dedicated system to test the osbuild-c
%endif
%changelog
* Thu Sep 25 2025 Eduard Abdullin <eabdullin@almalinux.org> - 149-1.alma.1
- Add AlmaLinux repositories
* Thu Aug 21 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 149-1
- New upstream release
* Wed Aug 06 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 147-1
- New upstream release
* Wed Jul 23 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 146-1
- New upstream release
* Sat Jul 12 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 145-1
- New upstream release
* Wed Jun 25 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 144-1
- New upstream release
* Wed Jun 11 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 143-1
- New upstream release
* Thu Jun 05 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 142-1
- New upstream release
* Mon May 19 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 141-1
- New upstream release
* Wed Apr 23 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 139-1
- New upstream release
* Wed Apr 16 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 138-1
- New upstream release
* Thu Apr 03 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 137-1
- New upstream release
* Mon Mar 31 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 136-1
- New upstream release
* Wed Mar 05 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 135-1
- New upstream release
* Thu Feb 13 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 132-1
- New upstream release
* Wed Feb 05 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 131-1
- New upstream release
* Wed Jan 08 2025 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 128-1
- New upstream release
* Wed Dec 11 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 127-1
- New upstream release
* Wed Nov 27 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 126-1
- New upstream release
* Thu Nov 14 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 125-1
- New upstream release
* Fri Nov 01 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 124-1
- New upstream release
* Wed Oct 16 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 123-1
- New upstream release
* Wed Oct 02 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 122-1
- New upstream release
* Mon Sep 30 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 121-1
- New upstream release
* Fri Aug 23 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 118-1
- New upstream release
* Wed Aug 21 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 117-1
- New upstream release
* Thu Aug 15 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 116-1
- New upstream release
* Wed Aug 07 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 115-1
- New upstream release
* Wed Jul 24 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 114-1
- New upstream release
* Fri Jul 12 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 113-1
- New upstream release
* Wed Jun 12 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 110-1
- New upstream release
* Tue Jun 04 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 109-1
- New upstream release
* Fri May 17 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 108-1
- New upstream release
* Wed Apr 03 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 104-1
- New upstream release
* Wed Mar 06 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 102-1
- New upstream release
* Mon Apr 30 2024 Eduard Abdullin <eabdullin@almalinux.org> - 101-1.alma.1
- Install AlmaLinux repositories
- Add AlmaLinux support
* Mon Feb 26 2024 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 101-1
- New upstream release
@ -618,7 +474,6 @@ Integration tests to be run on a pristine-dedicated system to test the osbuild-c
* Wed Mar 01 2023 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 76-1
- New upstream release
* Wed Feb 22 2023 imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com> - 75-1
- New upstream release