The repo locations moved in F45+ [1] and so now when
testing F44 in CI we end up with a failure like:
```
[2/3] STEP 2/2: RUN --mount=type=bind,from=repos,src=/,dst=/repos,rw <<EORUN (echo -e '--install\nltrace' > args.txt...)
rpm-ostree version: 2026.2
error: Installing packages: No enabled repositories
error: Executing compose install: ExitStatus(unix_wait_status(256))
Error executing command: Command '['rpm-ostree', 'compose', 'rootfs', '--source-root-rw=/repos', '/tmp/tmpmnq4sg6s.json', '/target-rootfs']' returned non-zero exit status 1.
subprocess exited with status 1
```
Let's drop using the rawhide image just for `repos` and use the
repos baked into the image we built instead (which should match
the target Fedora version we're testing).
[1] https://fedoraproject.org/wiki/Changes/RelocateRpmRepoConfigsToUsr
The current custom base image flow of rebuilding a "built-in" image with
custom repos and then adding your own content separate is reasonable,
but it would be nice if one could augment the list of packages to
install in that initial build rather than as a separate transaction.
Then, you don't have to cleanup after dnf and `/var` content, re-inject
repo definitions, and refetch repo metadata. It also allows building
container images with additional packages without `dnf` necessarily
being in the package set.
We don't want to leak rpm-ostree implementation details, nor do we want
to invent a new format. So just add support for a `--install` arg and a
generic `--args-file` to pass arguments via a file.
We then generate a new treefile on the fly to extend the `packages`
list.
As part of all of this we're de-emphasizing "tier-x" and focusing
on making it ergonomic to either build up from minimal, or down+up
from standard.
Second, also add a CI test for our derived image.
Signed-off-by: Colin Walters <walters@verbum.org>
2025-02-25 08:27:20 -05:00
Renamed from tests/Containerfile.test-c10s (Browse further)