tag v0.155.0
Tagger: imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com>
Changes with 0.155.0
----------------
* Fedora 43: add shadow-utils when LockRoot is enabled, update cloud-init service name (osbuild/images#1618)
* Author: Achilleas Koutsou, Reviewers: Gianluca Zuccarelli, Michael Vogt
* Update osbuild dependency commit ID to latest (osbuild/images#1609)
* Author: SchutzBot, Reviewers: Achilleas Koutsou, Simon de Vlieger, Tomáš Hozza
* Update snapshots to 20250626 (osbuild/images#1623)
* Author: SchutzBot, Reviewers: Achilleas Koutsou, Simon de Vlieger
* distro/rhel9: xz compress azure-cvm image type [HMS-8587] (osbuild/images#1620)
* Author: Achilleas Koutsou, Reviewers: Simon de Vlieger, Tomáš Hozza
* distro/rhel: introduce new image type: Azure SAP Apps [HMS-8738] (osbuild/images#1612)
* Author: Achilleas Koutsou, Reviewers: Simon de Vlieger, Tomáš Hozza
* distro/rhel: move ansible-core to sap_extras_pkgset (osbuild/images#1624)
* Author: Achilleas Koutsou, Reviewers: Brian C. Lane, Tomáš Hozza
* github/create-tag: allow passing the version when run manually (osbuild/images#1621)
* Author: Achilleas Koutsou, Reviewers: Lukáš Zapletal, Tomáš Hozza
* rhel9: move image-config into pure YAML (HMS-8593) (osbuild/images#1616)
* Author: Michael Vogt, Reviewers: Achilleas Koutsou, Simon de Vlieger
* test: split manifest checksums into separate files (osbuild/images#1625)
* Author: Achilleas Koutsou, Reviewers: Simon de Vlieger, Tomáš Hozza
— Somewhere on the Internet, 2025-06-30
---
tag v0.156.0
Tagger: imagebuilder-bot <imagebuilder-bots+imagebuilder-bot@redhat.com>
Changes with 0.156.0
----------------
* Many: delete repositories for EOL distributions (HMS-7044) (osbuild/images#1607)
* Author: Tomáš Hozza, Reviewers: Michael Vogt, Simon de Vlieger
* RHSM/facts: add 'image-builder CLI' API type (osbuild/images#1640)
* Author: Tomáš Hozza, Reviewers: Brian C. Lane, Simon de Vlieger
* Update dependencies 2025-06-29 (osbuild/images#1628)
* Author: SchutzBot, Reviewers: Simon de Vlieger, Tomáš Hozza
* Update osbuild dependency commit ID to latest (osbuild/images#1627)
* Author: SchutzBot, Reviewers: Simon de Vlieger, Tomáš Hozza
* [RFC] image: drop `InstallWeakDeps` from image.DiskImage (osbuild/images#1642)
* Author: Michael Vogt, Reviewers: Brian C. Lane, Simon de Vlieger, Tomáš Hozza
* build(deps): bump the go-deps group across 1 directory with 3 updates (osbuild/images#1632)
* Author: dependabot[bot], Reviewers: SchutzBot, Tomáš Hozza
* distro/rhel10: xz compress azure-cvm image type (osbuild/images#1638)
* Author: Achilleas Koutsou, Reviewers: Brian C. Lane, Simon de Vlieger
* distro: cleanup/refactor distro/{defs,generic} (HMS-8744) (osbuild/images#1570)
* Author: Michael Vogt, Reviewers: Simon de Vlieger, Tomáš Hozza
* distro: remove some hardcoded values from generic/images.go (osbuild/images#1636)
* Author: Michael Vogt, Reviewers: Simon de Vlieger, Tomáš Hozza
* distro: small tweaks for the YAML based imagetypes (osbuild/images#1622)
* Author: Michael Vogt, Reviewers: Brian C. Lane, Simon de Vlieger
* fedora/wsl: packages and locale (osbuild/images#1635)
* Author: Simon de Vlieger, Reviewers: Michael Vogt, Tomáš Hozza
* image/many: make compression more generic (osbuild/images#1634)
* Author: Simon de Vlieger, Reviewers: Brian C. Lane, Michael Vogt
* manifest: handle content template name with spaces (osbuild/images#1641)
* Author: Bryttanie, Reviewers: Brian C. Lane, Michael Vogt, Tomáš Hozza
* many: implement gzip (osbuild/images#1633)
* Author: Simon de Vlieger, Reviewers: Michael Vogt, Tomáš Hozza
* rhel/azure: set GRUB_TERMINAL based on architecture [RHEL-91383] (osbuild/images#1626)
* Author: Achilleas Koutsou, Reviewers: Simon de Vlieger, Tomáš Hozza
— Somewhere on the Internet, 2025-07-07
---
Update the osbuild/images to the version which introduces "dot notation"
for distro release versions.
- Replace all uses of distroregistry by distrofactory.
- Delete local version of reporegistry and use the one from the
osbuild/images.
- Weldr: unify `createWeldrAPI()` and `createWeldrAPI2()` into a single
`createTestWeldrAPI()` function`.
- store/fixture: rework fixtures to allow overriding the host distro
name and host architecture name. A cleanup function to restore the
host distro and arch names is always part of the fixture struct.
- Delete `distro_mock` package, since it is no longer used.
- Bump the required version of osbuild to 98, because the OSCAP
customization is using the 'compress_results' stage option, which is
not available in older versions of osbuild.
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
Version 5.22 introduced a new option to /etc/containers/policy.json called
keyPaths, see
https://github.com/containers/image/pull/1609
EL9 immediately took advantage of this new feature and started using it, see
04645c4a84
This quickly became an issue in our code: The go library (containers/image)
parses the configuration file very strictly and refuses to create a client
when policy.json with an unknown key is present on the filesystem. As we
used 5.21.1 that doesn't know the new key, our unit tests started to
failing when containers-common was present.
Reproducer:
podman run --pull=always --rm -it centos:stream9
dnf install -y dnf-plugins-core
dnf config-manager --set-enabled crb
dnf install -y gpgme-devel libassuan-devel krb5-devel golang git-core
git clone https://github.com/osbuild/osbuild-composer
cd osbuild-composer
# install the new containers-common and run the test
dnf install -y https://kojihub.stream.centos.org/kojifiles/packages/containers-common/1/44.el9/x86_64/containers-common-1-44.el9.x86_64.rpm
go test -count 1 ./...
# this returns:
--- FAIL: TestClientResolve (0.00s)
client_test.go:31:
Error Trace: client_test.go:31
Error: Received unexpected error:
Unknown key "keyPaths"
invalid policy in "/etc/containers/policy.json"
github.com/containers/image/v5/signature.NewPolicyFromFile
/osbuild-composer/vendor/github.com/containers/image/v5/signature/policy_config.go:88
github.com/osbuild/osbuild-composer/internal/container.NewClient
/osbuild-composer/internal/container/client.go:123
github.com/osbuild/osbuild-composer/internal/container_test.TestClientResolve
/osbuild-composer/internal/container/client_test.go:29
testing.tRunner
/usr/lib/golang/src/testing/testing.go:1439
runtime.goexit
/usr/lib/golang/src/runtime/asm_amd64.s:1571
Test: TestClientResolve
client_test.go:32:
Error Trace: client_test.go:32
Error: Expected value not to be nil.
Test: TestClientResolve
When run with an older containers-common, it succeeds:
dnf install -y https://kojihub.stream.centos.org/kojifiles/packages/containers-common/1/40.el9/x86_64/containers-common-1-40.el9.x86_64.rpm
go test -count 1 ./...
PASS
To sum it up, I had to upgrade github.com/containers/image/v5 to v5.22.0.
Unfortunately, this wasn't so simple, see
go get github.com/containers/image/v5@latest
go: github.com/containers/image/v5@v5.22.0 requires
github.com/letsencrypt/boulder@v0.0.0-20220331220046-b23ab962616e requires
github.com/honeycombio/beeline-go@v1.1.1 requires
github.com/gobuffalo/pop/v5@v5.3.1 requires
github.com/mattn/go-sqlite3@v2.0.3+incompatible: reading github.com/mattn/go-sqlite3/go.mod at revision v2.0.3: unknown revision v2.0.3
It turns out that github.com/mattn/go-sqlite3@v2.0.3+incompatible has been
recently retracted https://github.com/mattn/go-sqlite3/pull/998 and this
broke a ton of packages depending on it. I was able to fix it by adding
exclude github.com/mattn/go-sqlite3 v2.0.3+incompatible
to our go.mod, see
https://github.com/mattn/go-sqlite3/issues/975#issuecomment-955661657
After adding it,
go get github.com/containers/image/v5@latest
succeeded and tools/prepare-source.sh took care of the rest.
Signed-off-by: Ondřej Budai <ondrej@budai.cz>