osbuild-composer/osbuild-composer.spec
Packit Service 6c466fbc17 [packit] 37 upstream release
Upstream tag: v37
Upstream commit: 3c9b92b8

Signed-off-by: Packit Service <user-cont-team+packit-service@redhat.com>
2021-10-27 12:44:55 +00:00

734 lines
35 KiB
RPMSpec

# Do not build with tests by default
# Pass --with tests to rpmbuild to override
%bcond_with tests
%global goipath github.com/osbuild/osbuild-composer
Version: 37
%gometa
%global common_description %{expand:
A service for building customized OS artifacts, such as VM images and OSTree
commits, that uses osbuild under the hood. Besides building images for local
usage, it can also upload images directly to cloud.
It is compatible with composer-cli and cockpit-composer clients.
}
Name: osbuild-composer
Release: 1%{?dist}
Summary: An image building service based on osbuild
# osbuild-composer doesn't have support for building i686 and armv7hl images
ExcludeArch: i686 armv7hl
# Upstream license specification: Apache-2.0
License: ASL 2.0
URL: %{gourl}
Source0: %{gosource}
BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
BuildRequires: systemd
BuildRequires: krb5-devel
BuildRequires: python3-docutils
BuildRequires: make
%if 0%{?fedora}
BuildRequires: systemd-rpm-macros
BuildRequires: git
BuildRequires: golang(github.com/aws/aws-sdk-go)
BuildRequires: golang(github.com/Azure/azure-sdk-for-go)
BuildRequires: golang(github.com/Azure/azure-storage-blob-go/azblob)
BuildRequires: golang(github.com/BurntSushi/toml)
BuildRequires: golang(github.com/coreos/go-semver/semver)
BuildRequires: golang(github.com/coreos/go-systemd/activation)
BuildRequires: golang(github.com/deepmap/oapi-codegen/pkg/codegen)
BuildRequires: golang(github.com/go-chi/chi)
BuildRequires: golang(github.com/golang-jwt/jwt)
BuildRequires: golang(github.com/google/uuid)
BuildRequires: golang(github.com/jackc/pgx/v4)
BuildRequires: golang(github.com/julienschmidt/httprouter)
BuildRequires: golang(github.com/getkin/kin-openapi/openapi3)
BuildRequires: golang(github.com/kolo/xmlrpc)
BuildRequires: golang(github.com/labstack/echo/v4)
BuildRequires: golang(github.com/gobwas/glob)
BuildRequires: golang(github.com/google/go-cmp/cmp)
BuildRequires: golang(github.com/gophercloud/gophercloud)
BuildRequires: golang(github.com/prometheus/client_golang/prometheus/promhttp)
BuildRequires: golang(github.com/openshift-online/ocm-sdk-go)
BuildRequires: golang(github.com/segmentio/ksuid)
BuildRequires: golang(github.com/stretchr/testify/assert)
BuildRequires: golang(github.com/ubccr/kerby)
BuildRequires: golang(github.com/vmware/govmomi)
BuildRequires: golang(cloud.google.com/go)
BuildRequires: golang(gopkg.in/ini.v1)
%endif
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-worker = %{version}-%{release}
Requires: systemd
Provides: weldr
%if 0%{?rhel}
Obsoletes: lorax-composer <= 29
Conflicts: lorax-composer
%endif
# Remove when we stop releasing into Fedora 35
%if 0%{?fedora} >= 34
# lorax 34.3 is the first one without the composer subpackage
Obsoletes: lorax-composer < 34.3
%endif
# Remove when we stop releasing into Fedora 33
%if 0%{?fedora} <= 33
Obsoletes: golang-github-osbuild-composer < %{version}-%{release}
Provides: golang-github-osbuild-composer = %{version}-%{release}
%endif
# remove when F34 is EOL
Obsoletes: osbuild-composer-koji <= 23
%description
%{common_description}
%prep
%if 0%{?rhel}
%forgeautosetup -p1
%else
%goprep
%endif
%if 0%{?fedora} >= 34
# Fedora 34 and newer ships a newer version of github.com/getkin/kin-openapi
# package which has a different API than the older ones. Let's make the auto-
# generated code compatible by applying some sed magic.
#
# Remove when F33 is EOL
sed -i "s/openapi3.Swagger/openapi3.T/;s/openapi3.NewSwaggerLoader().LoadSwaggerFromData/openapi3.NewLoader().LoadFromData/" internal/cloudapi/v1/openapi.v1.gen.go
sed -i "s/openapi3.Swagger/openapi3.T/;s/openapi3.NewSwaggerLoader().LoadSwaggerFromData/openapi3.NewLoader().LoadFromData/" internal/cloudapi/v2/openapi.v2.gen.go
sed -i "s/openapi3.Swagger/openapi3.T/;s/openapi3.NewSwaggerLoader().LoadSwaggerFromData/openapi3.NewLoader().LoadFromData/" internal/worker/api/api.gen.go
%endif
%build
%if 0%{?rhel}
GO_BUILD_PATH=$PWD/_build
install -m 0755 -vd $(dirname $GO_BUILD_PATH/src/%{goipath})
ln -fs $PWD $GO_BUILD_PATH/src/%{goipath}
cd $GO_BUILD_PATH/src/%{goipath}
install -m 0755 -vd _bin
export PATH=$PWD/_bin${PATH:+:$PATH}
export GOPATH=$GO_BUILD_PATH:%{gopath}
export GOFLAGS=-mod=vendor
%endif
# Set the commit hash so that composer can report what source version
# was used to build it. This has to be set explicitly when calling rpmbuild,
# this script will not attempt to automatically discover it.
%if %{?commit:1}0
export LDFLAGS="${LDFLAGS} -X 'github.com/osbuild/osbuild-composer/internal/common.GitRev=%{commit}'"
%endif
export LDFLAGS="${LDFLAGS} -X 'github.com/osbuild/osbuild-composer/internal/common.RpmVersion=%{name}-%{epoch}:%{version}-%{release}.%{_arch}'"
%gobuild -o _bin/osbuild-composer %{goipath}/cmd/osbuild-composer
%gobuild -o _bin/osbuild-worker %{goipath}/cmd/osbuild-worker
make man
%if %{with tests} || 0%{?rhel}
# 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 ' ')"
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-composer-cli-tests %{goipath}/cmd/osbuild-composer-cli-tests
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-dnf-json-tests %{goipath}/cmd/osbuild-dnf-json-tests
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-weldr-tests %{goipath}/internal/client/
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-image-tests %{goipath}/cmd/osbuild-image-tests
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-auth-tests %{goipath}/cmd/osbuild-auth-tests
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-koji-tests %{goipath}/cmd/osbuild-koji-tests
go test -c -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-composer-dbjobqueue-tests %{goipath}/cmd/osbuild-composer-dbjobqueue-tests
go build -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/cloud-cleaner %{goipath}/cmd/cloud-cleaner
go build -tags=integration -ldflags="${TEST_LDFLAGS}" -o _bin/osbuild-mock-openid-provider %{goipath}/cmd/osbuild-mock-openid-provider
%endif
%install
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 dnf-json %{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%{?centos}
# CentOS 9 supports building for CentOS 8 and later
%if 0%{?centos} >= 9
install -m 0644 -vp repositories/centos-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%else
# CentOS 8 only supports building for CentOS 8
install -m 0644 -vp repositories/centos-%{centos}* %{buildroot}%{_datadir}/osbuild-composer/repositories/
install -m 0644 -vp repositories/centos-stream-%{centos}* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%endif
%else
%if 0%{?rhel}
# RHEL 9 supports building for RHEL 8 and later
%if 0%{?rhel} >= 9
install -m 0644 -vp repositories/rhel-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%else
# RHEL 8 only supports building for 8
install -m 0644 -vp repositories/rhel-%{rhel}* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%endif
%endif
%endif
# Fedora can build for all included fedora releases
%if 0%{?fedora}
install -m 0644 -vp repositories/fedora-* %{buildroot}%{_datadir}/osbuild-composer/repositories/
%endif
install -m 0755 -vd %{buildroot}%{_unitdir}
install -m 0644 -vp distribution/*.{service,socket} %{buildroot}%{_unitdir}/
install -m 0755 -vd %{buildroot}%{_sysusersdir}
install -m 0644 -vp distribution/osbuild-composer.conf %{buildroot}%{_sysusersdir}/
install -m 0755 -vd %{buildroot}%{_localstatedir}/cache/osbuild-composer/dnf-cache
install -m 0755 -vd %{buildroot}%{_mandir}/man7
install -m 0644 -vp docs/*.7 %{buildroot}%{_mandir}/man7/
%if %{with tests} || 0%{?rhel}
install -m 0755 -vd %{buildroot}%{_libexecdir}/osbuild-composer-test
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/
install -m 0755 -vp _bin/cloud-cleaner %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp _bin/osbuild-mock-openid-provider %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vp tools/define-compose-url.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
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/
install -m 0755 -vp tools/set-env-variables.sh %{buildroot}%{_libexecdir}/osbuild-composer-test/
install -m 0755 -vd %{buildroot}%{_libexecdir}/tests/osbuild-composer
install -m 0755 -vp test/cases/* %{buildroot}%{_libexecdir}/tests/osbuild-composer/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/ansible
install -m 0644 -vp test/data/ansible/* %{buildroot}%{_datadir}/tests/osbuild-composer/ansible/
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/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/composer
install -m 0644 -vp test/data/composer/* %{buildroot}%{_datadir}/tests/osbuild-composer/composer/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/worker
install -m 0644 -vp test/data/worker/* %{buildroot}%{_datadir}/tests/osbuild-composer/worker/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/repositories
install -m 0644 -vp test/data/repositories/* %{buildroot}%{_datadir}/tests/osbuild-composer/repositories/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/kerberos
install -m 0644 -vp test/data/kerberos/* %{buildroot}%{_datadir}/tests/osbuild-composer/kerberos/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/keyring
install -m 0644 -vp test/data/keyring/id_rsa.pub %{buildroot}%{_datadir}/tests/osbuild-composer/keyring/
install -m 0600 -vp test/data/keyring/id_rsa %{buildroot}%{_datadir}/tests/osbuild-composer/keyring/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/koji
install -m 0644 -vp test/data/koji/* %{buildroot}%{_datadir}/tests/osbuild-composer/koji/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/x509
install -m 0644 -vp test/data/x509/* %{buildroot}%{_datadir}/tests/osbuild-composer/x509/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/openshift
install -m 0644 -vp test/data/openshift/* %{buildroot}%{_datadir}/tests/osbuild-composer/openshift/
install -m 0755 -vd %{buildroot}%{_datadir}/tests/osbuild-composer/schemas
install -m 0644 -vp internal/jobqueue/dbjobqueue/schemas/* %{buildroot}%{_datadir}/tests/osbuild-composer/schemas/
%endif
%check
%if 0%{?rhel}
export GOFLAGS=-mod=vendor
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-remote-worker.socket
%preun
%systemd_preun osbuild-composer.service osbuild-composer.socket osbuild-composer-api.socket osbuild-remote-worker.socket
%postun
%systemd_postun_with_restart osbuild-composer.service osbuild-composer.socket osbuild-composer-api.socket osbuild-remote-worker.socket
%files
%license LICENSE
%doc README.md
%{_mandir}/man7/%{name}.7*
%{_unitdir}/osbuild-composer.service
%{_unitdir}/osbuild-composer.socket
%{_unitdir}/osbuild-composer-api.socket
%{_unitdir}/osbuild-local-worker.socket
%{_unitdir}/osbuild-remote-worker.socket
%{_sysusersdir}/osbuild-composer.conf
%package core
Summary: The core osbuild-composer binary
Requires: %{name}-dnf-json = %{version}-%{release}
%description core
The core osbuild-composer binary. This is suitable both for spawning in containers and by systemd.
%files core
%{_libexecdir}/osbuild-composer/osbuild-composer
%{_datadir}/osbuild-composer/
%package worker
Summary: The worker for osbuild-composer
Requires: systemd
Requires: qemu-img
Requires: osbuild >= 37
Requires: osbuild-ostree >= 37
Requires: %{name}-dnf-json = %{version}-%{release}
# remove in F34
Obsoletes: golang-github-osbuild-composer-worker < %{version}-%{release}
Provides: golang-github-osbuild-composer-worker = %{version}-%{release}
%description worker
The worker for osbuild-composer
%files worker
%{_libexecdir}/osbuild-composer/osbuild-worker
%{_unitdir}/osbuild-worker@.service
%{_unitdir}/osbuild-remote-worker@.service
%post worker
%systemd_post osbuild-worker@.service osbuild-remote-worker@.service
%preun worker
# systemd_preun uses systemctl disable --now which doesn't work well with template services.
# See https://github.com/systemd/systemd/issues/15620
# The following lines mimicks its behaviour by running two commands:
# disable and stop all the worker services
systemctl --no-reload disable osbuild-worker@.service osbuild-remote-worker@.service
systemctl stop "osbuild-worker@*.service" "osbuild-remote-worker@*.service"
%postun worker
# restart all the worker services
%systemd_postun_with_restart "osbuild-worker@*.service" "osbuild-remote-worker@*.service"
%package dnf-json
Summary: The dnf-json binary used by osbuild-composer and the workers
# Conflicts with older versions of composer that provide the same files
# this can be removed when RHEL 8 and Fedora 35 reach EOL
Conflicts: osbuild-composer <= 35
%description dnf-json
The dnf-json binary used by osbuild-composer and the workers.
%files dnf-json
%{_libexecdir}/osbuild-composer/dnf-json
%if %{with tests} || 0%{?rhel}
%package tests
Summary: Integration tests
Requires: %{name} = %{version}-%{release}
Requires: composer-cli
Requires: createrepo_c
Requires: xorriso
Requires: qemu-kvm-core
Requires: systemd-container
Requires: jq
Requires: unzip
Requires: container-selinux
Requires: dnsmasq
Requires: krb5-workstation
Requires: podman
Requires: python3
Requires: sssd-krb5
Requires: libvirt-client libvirt-daemon
Requires: libvirt-daemon-config-network
Requires: libvirt-daemon-config-nwfilter
Requires: libvirt-daemon-driver-interface
Requires: libvirt-daemon-driver-network
Requires: libvirt-daemon-driver-nodedev
Requires: libvirt-daemon-driver-nwfilter
Requires: libvirt-daemon-driver-qemu
Requires: libvirt-daemon-driver-secret
Requires: libvirt-daemon-driver-storage
Requires: libvirt-daemon-driver-storage-disk
Requires: libvirt-daemon-kvm
Requires: qemu-img
Requires: qemu-kvm
Requires: virt-install
Requires: expect
Requires: python3-lxml
Requires: httpd
Requires: mod_ssl
Requires: openssl
Requires: firewalld
# see https://bugzilla.redhat.com/show_bug.cgi?id=1986333
%if 0%{?rhel} && 0%{?rhel} != 9
Requires: podman-plugins
%endif
Requires: dnf-plugins-core
Requires: skopeo
%if 0%{?fedora}
# koji and ansible are not in RHEL repositories. Depending on them breaks RHEL
# gating (see OSCI-1541). The test script must enable EPEL and install those
# packages manually.
Requires: koji
Requires: ansible
%endif
%ifarch %{arm}
Requires: edk2-aarch64
%endif
%description tests
Integration tests to be run on a pristine-dedicated system to test the osbuild-composer package.
%files tests
%{_libexecdir}/osbuild-composer-test/
%{_libexecdir}/tests/osbuild-composer/
%{_datadir}/tests/osbuild-composer/
%endif
%changelog
* Wed Oct 27 2021 Packit Service <user-cont-team+packit-service@redhat.com> - 37-1
- Bump version numbers ahead of release (Simon Steinbeiss)
- Switch to simple upstream releases (Simon Steinbeiss)
- distro/rhel86: special case root user for ssh keys (Christian Kellner)
- Revert "Revert "cloudapi/v1: Move depsolving to workers"" (Tom Gundersen)
- templates: image-builder-ci access to composer (Tom Gundersen)
- ci: remove 8.5 nightly testing (Ondřej Budai)
- composer: add json log formatting (Diaa Sami)
- test: timestamp messages in test scripts (Achilleas Koutsou)
- Add news item for updated CentOS Stream 8 definitions (Achilleas Koutsou)
- test/api: SSH_USER=ec2-user for centos on AWS (Achilleas Koutsou)
- test/cases: add centos-8 as support to test scripts (Achilleas Koutsou)
- test/ansible: install greenboot-failing-unit from public source (Achilleas Koutsou)
- CI: enable OSTree tests on CentOS 8 (Achilleas Koutsou)
- test/data: regenerate manifests for CentOS 8 (Achilleas Koutsou)
- distro/rhel86: skip RHSM config stage for non-RHEL (Achilleas Koutsou)
- distro/rhel86: distro private method isRHEL() (Achilleas Koutsou)
- test/data/repositories: update cs8 rpmrepo snapshot (Achilleas Koutsou)
- tools: add all supported image types for centos-8 (Achilleas Koutsou)
- tools/test-case-generators: fix typo in imagetype-map (Achilleas Koutsou)
- distro/rhel86: add distro specific package set (Achilleas Koutsou)
- test: add RHEL 8.6 image installer test manifest (Achilleas Koutsou)
- distro/rhel86: add CentOS Stream 8 as alias to RHEL 8.6 (Achilleas Koutsou)
- distro/rhel86: remove redundant rhel-86 alias (Achilleas Koutsou)
- spec: dnf-json conflicts with old composer (Achilleas Koutsou)
- ostree: change the URL for OC client temporarily (Ondřej Budai)
- test/aws: remove a no longer needed key from an instance (Ondřej Budai)
- ci: pin a specific RHEL 9.0b compose (Ondřej Budai)
- ci: rotate secret names (Ondřej Budai)
- mockbuild: explicitly configure s3cmd (Ondřej Budai)
- mockbuild: remove subscriptions (Ondřej Budai)
- .gitlab-ci: Don't save the journal as an artifact (sanne)
- jobqueue: Better logging (Diaa Sami)
- templates: Claims based on user_ids (sanne)
- worker: Configurable timeout for RequestJob (sanne)
- build(deps): bump cloud.google.com/go/storage from 1.16.1 to 1.18.1 (dependabot[bot])
- build(deps): bump github.com/labstack/echo/v4 from 4.5.0 to 4.6.1 (dependabot[bot])
- build(deps): bump github.com/gophercloud/gophercloud (dependabot[bot])
- worker: Separate goroutine for depsolve jobs (sanne)
- cloudapi/v2: Plural path section when querying a collection (sanne)
- cloudapi/v2: Do not require auth for /openapi or /errors (sanne)
- worker: Configure AWS credentials in the worker (Thomas Lavocat)
- cloudapi/v2: ensure only one image per a compose in the API spec (Ondřej Budai)
- cloudapi/v2: clean up targets (Ondřej Budai)
- cloudapi/v2: move multi-image compose check to the beginning (Ondřej Budai)
* Wed Oct 13 2021 Packit Service <user-cont-team+packit-service@redhat.com> - 36-1
- 36 (Achilleas Koutsou)
- Revert "cloudapi/v1: Move depsolving to workers" (Sanne Raymaekers)
- worker: Prefix https always (sanne)
- cloudapi/v1: Move depsolving to workers (sanne)
- cloudapi/v2: fix newV2Server() call in test (Achilleas Koutsou)
- templates: Name service ports (sanne)
- SPEC: Exclude `armv7hl` architecture (Tomas Hozza)
- distro/rhel90 -> distro/rhel90beta: rename package (Achilleas Koutsou)
- distro/rhel90: rename to rhel-90-beta and alias base name (Achilleas Koutsou)
- spec: Split dnf-json into a subpackage (sanne)
- cloudapi/v2: Use worker to depsolve (Ondřej Budai)
- worker: Add a depsolve job type (Tom Gundersen)
- packit: Push downstream instead of creating PR (Simon Steinbeiss)
- templates: Name services after endpoints (sanne)
- worker: Make BasePath configurable (sanne)
- cloudapi/v2: Listen on /api/image-builder-composer/v2 (sanne)
- test/ostree: remove --ip-range from podman network (Achilleas Koutsou)
- RHEL-8.6: add support for official EC2 SAP image (Tomas Hozza)
- tools/provision: set up nightly repos for RHEL 8.6 (Achilleas Koutsou)
- test/cases: add support for RHEL 8.6 to test scripts (Achilleas Koutsou)
- schutzbot: pin osbuild to current main for 8.6 (Achilleas Koutsou)
- schutzbot: update terraform sha (Achilleas Koutsou)
- news: add entry about RHEL 8.6 (Achilleas Koutsou)
- test: add RHEL 8.6 test manifests (Achilleas Koutsou)
- test: add rpmrepo snapshots for RHEL 8.6 (Achilleas Koutsou)
- ci: run all tests on RHEL 8.6 (Achilleas Koutsou)
- test/data/repositories: add test repos for rhel-86 (Achilleas Koutsou)
- distro/rhel85: remove rhel86 alias (Achilleas Koutsou)
- distro/rhel86: copy all definitions from rhel85 (Achilleas Koutsou)
- cloudapi/v2: Configurable aws bucket (sanne)
- cloudapi/v2: Replace upload types with image types (sanne)
- Tests/RHEL-9.0: add EC2 SAP image test (Tomas Hozza)
- Tests/RHEL-9.0: add repos needed for EC2 SAP image tests (Tomas Hozza)
- RHEL-9.0: add EC2 SAP image definition. (Tomas Hozza)
- Tests/RHEL-9.0: add EC2 and EC2 HA image tests (Tomas Hozza)
- Tests/RHEL-9.0: add repos needed for EC2 and EC2 HA image tests (Tomas Hozza)
- Image tests: skip rpm-ostree-1-autovar.conf tmpfiles.d config on Fedora (Tomas Hozza)
- composer: Don't dump sensitive fields from config (sanne)
- tests: Update image_tests (Jakub Rusz)
- templates: Duplicate value in composer config (sanne)
- templates: Port names should be less than 15 characters (sanne)
- templates: Make sure ports are unquoted (sanne)
- cloudapi/v1: Return status created in compose handler (sanne)
- worker: Use Recover middleware to handle panics (Diaa Sami)
- worker: Improve logging (Diaa Sami)
- Regenerate affected image test cases (Tomas Hozza)
- generate-all-test-cases: allow specifying additional DNF repos (Tomas Hozza)
- image-info: ensure that directory is analysed as read-only (Tomas Hozza)
- tests: enable koji.sh test on RHEL-9 (Jakub Rusz)
- tests/ci: enable vmware.sh and cross-distro.sh on rhel-9 (Jakub Rusz)
- README: Add a link to our developer guide (Simon Steinbeiss)
- templates: Composer OSD template (sanne)
- internal/rpmmd: log repository files loaded during composer startup (Martin Sehnoutka)
- dnf-json: expire metadata by default (Tom Gundersen)
- schutzbot: Clean up non-default storage accounts (sanne)
- main: IsNotExist() is no longer a valid check (Achilleas Koutsou)
- config: update NonExisting test to check for default (Achilleas Koutsou)
- config: don't fail LoadConfig if file doesn't exist (Achilleas Koutsou)
- Test: regenerate all image test cases (Tomas Hozza)
- Image tests: use RPMRepo with released RHEL-8.4 content (Tomas Hozza)
- image-info: fix undefined variable in analyse_directory() (Tomas Hozza)
- image-info: sort partitions list in the report. (Tomas Hozza)
- image-info: use subprocess_check_output() in read_selinux_ctx_mismatch() (Tomas Hozza)
- image-info: check not installed documentation (Tomas Hozza)
- image-info: read content of /etc/resolv.conf (Tomas Hozza)
- image-info: read sysctl.d config files from multiple paths (Tomas Hozza)
- image-info: read security limits config files from multiple paths (Tomas Hozza)
- image-info: read tmpfiles.d config files from multiple paths (Tomas Hozza)
- image-info: read systemd service unit drop-ins from multiple paths (Tomas Hozza)
- image-info: read cloud-init configs from multiple paths (Tomas Hozza)
- image-info: read systemd-logind configs from multiple paths (Tomas Hozza)
- image-info: read dracut configs from multiple paths (Tomas Hozza)
- image-info: read modprobe configs from multiple paths (Tomas Hozza)
- composer: More configuration of how composer is served (sanne)
* Sat Oct 02 2021 Packit Service <user-cont-team+packit-service@redhat.com> - 35-1
- 35 (Simon Steinbeiss)
- gitleaks: add allow list for test passwords and keys (Achilleas Koutsou)
- mockbuild: use download.devel of download.eng.bos (Ondřej Budai)
- ci: install ansible-core instead of ansible for EL9 (Ondřej Budai)
- dnf-json: disable zchunk (Ondřej Budai)
- composer: improve logging (Diaa Sami)
- cloudapi: Add extra logging & improve existing (Diaa Sami)
- cloudapi: use Logrus as default logger in Echo (Diaa Sami)
- logging: add logrus dependency (Diaa Sami)
- ci: don't run nightly pipeline on ga releases (Jakub Rusz)
- distro/rhel90: use qcow2 compat 1.1 for qcows (Ondřej Budai)
- tools: Push ubi container to quay.io/app-sre/composer (sanne)
- blueprints: change minsize from int to uint64 (Gianluca Zuccarelli)
- test/regression: Adapt to new rhel-84-ga runners (sanne)
- schutzbot: Also build container on branch pushes (sanne)
- schutzbot: pin osbuild to >=37 on all distros (Ondřej Budai)
- spec: bump osbuild depedendency to 37 (Ondřej Budai)
- distro/rhel85: set bootloader to none for edge (Christian Kellner)
- osbuild2: add bootloader option to ostree.config (Christian Kellner)
- osbuild2: small doc fix for ostree.config (Christian Kellner)
- build(deps): bump github.com/labstack/echo/v4 from 4.5.0 to 4.6.0 (dependabot[bot])
- build(deps): bump github.com/aws/aws-sdk-go from 1.40.46 to 1.40.49 (dependabot[bot])
- workers: Backwards compatible api.openshift.com spec compliance (sanne)
- Disable regression-composer-works-behind-satellite.sh, Refs #1834 (Alexander Todorov)
- test/ostree: use 8.4 when testing on 8.4 (Ondřej Budai)
- ci: add workaround for missing redhat.repo in EC2 (Ondřej Budai)
- schutzfile: remove rhel-8.3 (Ondřej Budai)
- test/koji: always build the latest RHEL (Ondřej Budai)
- mockbuild: use REPO_BUCKET when defining the base URL (Ondřej Budai)
- test: use hyphen in DISTRO_CODE instead of underscore (Ondřej Budai)
- test: move env variables into set-env-variables helper (Ondřej Budai)
- test/koji: remove the workaround for rhel-8 (Ondřej Budai)
- test/api: don't source os-release again (Ondřej Budai)
- test: use cdn repos for 8.3 and 8.4 (Ondřej Budai)
- mockbuild: reuse nightly repos from redhat.repo (Ondřej Budai)
- ci: assume subscribed machines (Ondřej Budai)
- terraform: update (Ondřej Budai)
- build(deps): bump github.com/Azure/azure-sdk-for-go (dependabot[bot])
- distribution: Use After=network.target instead of multi-user (Martin Sehnoutka)
- internal/common: introduce git revision and rpm version (Martin Sehnoutka)
- test/ostree: support weldr-client output structure (Achilleas Koutsou)
- test/data: update test manifests for RHEL 9.0 edge (Achilleas Koutsou)
- distro/rhel90: explicitly enable greenboot services for edge (Achilleas Koutsou)
- distro/rhel90: add gnome-kiosk to installer package set (Achilleas Koutsou)
- tools/provision: install community.general ansible collection (Achilleas Koutsou)
- test/ostree: remove debug callback from ansible calls (Achilleas Koutsou)
- test/ostree: install python3 instead of specific version (Achilleas Koutsou)
- distro/rhel90: remove unavailable packages from edge-installer (Achilleas Koutsou)
- ci: enable ostree tests on RHEL 9.0-beta (Achilleas Koutsou)
- NEWS: Drop title line (Simon Steinbeiss)
- cloudapi: use Recover middleware to handle panics (Diaa Sami)
- HACKING: fix container command (Gianluca Zuccarelli)
- containers: worker client base url protocol (Gianluca Zuccarelli)
- containers: update composer log level flag (Gianluca Zuccarelli)
- Regenerate relevant image test cases (Tomas Hozza)
- distro/rhel90: re-include nss-altfiles for edge (Christian Kellner)
- generate-test-cases: drop `--with-customizations` option (Tomas Hozza)
- format-request-map.json: remove redundant overrides (Tomas Hozza)
- generate-test-cases: don't leak "supported_arches" to compose request (Tomas Hozza)
- tools: improve deploy-openstack script (Diaa Sami)
- weldr: deleting an unknown source should return an error (Brian C. Lane)
- Update distro-arch-imagetype-map.json (Tomas Hozza)
- test: update image test case generation part of README (Tomas Hozza)
- generate-all-test-cases: add option to keep created workdir on runner (Tomas Hozza)
- generate-all-test-cases: report results when Runner finishes (Tomas Hozza)
- generate-all-test-cases: support using existing remote hosts (Tomas Hozza)
- generate-all-test-cases: remove '--keep-image-info' option (Tomas Hozza)
- generate-all-test-cases: move current generator method to 'qemu' command (Tomas Hozza)
- generate-all-test-cases: fix log level in multiprocessing processes (Tomas Hozza)
- generate-all-test-cases: don't use virtfs to copy data from/to the VM (Tomas Hozza)
- generate-all-test-cases: don't use paramiko for SSH (Tomas Hozza)
- generate-all-test-cases: use SSH keys instead of password for VMs (Tomas Hozza)
- generate-all-test-cases: don't use cloud-init to install RPMs (Tomas Hozza)
- generate-all-test-cases: fix generating of cloud-init cdrom on MacOS (Tomas Hozza)
- generate-all-test-cases: separate generic parts of BaseRunner (Tomas Hozza)
- build(deps): bump github.com/aws/aws-sdk-go from 1.40.43 to 1.40.46 (dependabot[bot])
- generate-test-cases: check `supported_arches` from format-request-map.json (Tomas Hozza)
- schutzbot: Update terraform sha (sanne)
- Drop RELEASING.md and point to dev guide (Simon Steinbeiss)
- build(deps): bump github.com/Azure/go-autorest/autorest (dependabot[bot])
- build(deps): bump github.com/aws/aws-sdk-go from 1.40.38 to 1.40.43 (dependabot[bot])
- build(deps): bump github.com/openshift-online/ocm-sdk-go (dependabot[bot])
* Wed Aug 11 2021 Ondřej Budai <ondrej@budai.cz> - 31-1
- New upstream release
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 30-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jun 14 2021 Ondřej Budai <ondrej@budai.cz> - 30-1
- New upstream release
* Fri Mar 05 2021 Martin Sehnoutka <msehnout@redhat.com> - 29-1
- New upstream release
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 28-2
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Sat Feb 20 2021 Martin Sehnoutka <msehnout@redhat.com> - 28-1
- New upstream release
* Thu Feb 04 2021 Ondrej Budai <obudai@redhat.com> - 27-1
- New upstream release
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 26-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Dec 17 2020 Ondrej Budai <obudai@redhat.com> - 26-2
- Fix the compatibility with a new golang-github-azure-storage-blob 0.12
* Thu Dec 17 2020 Ondrej Budai <obudai@redhat.com> - 26-1
- New upstream release
* Thu Nov 19 2020 Ondrej Budai <obudai@redhat.com> - 25-1
- New upstream release
* Thu Nov 12 2020 Ondrej Budai <obudai@redhat.com> - 24-1
- New upstream release
* Fri Nov 06 2020 Ondrej Budai <obudai@redhat.com> - 23-1
- New upstream release
* Fri Oct 16 2020 Ondrej Budai <obudai@redhat.com> - 22-1
- New upstream release
* Sun Aug 23 2020 Tom Gundersen <teg@jklm.no> - 20-1
- New upstream release
* Tue Aug 11 2020 Tom Gundersen <teg@jklm.no> - 19-1
- New upstream release
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 18-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 22 2020 Ondrej Budai <obudai@redhat.com> - 18-1
- New upstream release
* Wed Jul 08 2020 Ondrej Budai <obudai@redhat.com> - 17-1
- New upstream release
* Mon Jun 29 2020 Ondrej Budai <obudai@redhat.com> - 16-1
- New upstream release
* Fri Jun 12 2020 Ondrej Budai <obudai@redhat.com> - 15-1
- New upstream release
* Thu Jun 04 2020 Ondrej Budai <obudai@redhat.com> - 14-1
- New upstream release
* Fri May 29 2020 Ondrej Budai <obudai@redhat.com> - 13-2
- Add missing osbuild-ostree dependency
* Thu May 28 2020 Ondrej Budai <obudai@redhat.com> - 13-1
- New upstream release
* Thu May 14 2020 Ondrej Budai <obudai@redhat.com> - 12-1
- New upstream release
* Wed Apr 29 2020 Ondrej Budai <obudai@redhat.com> - 11-1
- New upstream release
* Wed Apr 15 2020 Ondrej Budai <obudai@redhat.com> - 10-1
- New upstream release
* Wed Apr 01 2020 Ondrej Budai <obudai@redhat.com> - 9-1
- New upstream release
* Mon Mar 23 2020 Ondrej Budai <obudai@redhat.com> - 8-1
- Initial package (renamed from golang-github-osbuild-composer)