Commit graph

1,073 commits

Author SHA1 Message Date
c2ff52a7cf
bootc-base-imagectl: simplify manifest path logic
The `if os.path.isdir(args.manifest)` bit dates from the introduction
of this script, but doesn't really work. I suspect the intent here was
to abstract over some manifests being top-level YAML files and others
being directories).

Except that:
1. The script didn't actually check the right path. It's checking
   `$PWD/{args.manifest}` instead of `$MANIFESTDIR/{args.manifest}`.
2. `list` doesn't have the equivalent logic to look for `manifest.yaml`
   files in subdirectories.
3. Nowadays, there is both a e.g. `standard.yaml` _and_ a
   `standard/manifest.yaml` directory. The established semantic there
   AIUI is that the top-level manifests are opinionated for a specific
   OS (Fedora/CentOS/RHEL), whereas the directories are shared across
   all of those.

So let's just nuke support for the directory path.
2025-06-17 15:32:25 -04:00
040f6319f5
Drop fedora- prefix from canonical manifests
It's confusing right now how the manifest names differ across
fedora-bootc, centos-bootc and rhel-bootc. Both rhel-bootc and
centos-bootc only use "bare" names like `minimal`, and `standard`, while
fedora-bootc prefixes everything with `fedora-`.

For FCOS/SCOS/RHCOS, it would be beneficial to maintain the same naming
across all of those.

Let's just match the naming here to the "bare" version. But add symlinks
so that we don't break the old names (but note that being symlinks, they
will no longer show up in `bootc-base-imagectl list`).
2025-06-17 15:32:25 -04:00
Jonathan Lebon
a750416a16 Merge branch 'dnf5-conditional' into 'main'
Move python3-libdnf to fedora only

See merge request fedora/bootc/base-images!172
2025-06-17 18:23:09 +00:00
Colin Walters
58570a1e60 Move python3-libdnf5 to fedora only
ref https://gitlab.com/redhat/centos-stream/containers/bootc/-/merge_requests/558#note_2492110138

Signed-off-by: Colin Walters <walters@verbum.org>
2025-06-17 12:52:34 -04:00
82b8ca7ba9 Merge branch 'renovate/main-fedora-42-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250617.0 (main)

See merge request fedora/bootc/base-images!211
2025-06-17 16:06:22 +02:00
Platform Engineering Bot
a0d499a91c chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250617.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-17 11:39:18 +00:00
1392229442 Merge branch 'renovate/main-fedora-42-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250613.0 (main)

See merge request fedora/bootc/base-images!208
2025-06-16 10:55:46 +02:00
Platform Engineering Bot
877bf31487 chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250613.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-16 00:08:18 +00:00
99ba876dfb Merge branch 'renovate/main-fedora-42-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250612.0 (main)

See merge request fedora/bootc/base-images!207
2025-06-12 20:26:10 +02:00
Platform Engineering Bot
ee03dec748 chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250612.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-12 14:38:24 +00:00
e40616c71a Merge branch 'renovate/main-fedora-42-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250610.0 (main)

See merge request fedora/bootc/base-images!204
2025-06-11 09:51:16 +02:00
7fa2fb90af Merge branch 'renovate/main-fedora-rawhide-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose docker tag to fedora-rawhide-20250610.n.0 (main)

See merge request fedora/bootc/base-images!205
2025-06-11 09:50:57 +02:00
Platform Engineering Bot
70d53b382c chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose docker tag to fedora-rawhide-20250610.n.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-11 05:32:01 +00:00
Platform Engineering Bot
da4799c2b1 chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250610.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-11 05:31:37 +00:00
c50fcf9360 Merge branch 'renovate/main-fedora-rawhide-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose:fedora-rawhide-20250609.n.0 docker digest to 2af59ca (main)

See merge request fedora/bootc/base-images!202
2025-06-10 15:25:30 +02:00
bae0d7ad9d Merge branch 'renovate/main-auto-merged-updates' into 'main'
chore(deps): update quay.io/buildah/stable docker tag to v1.40.1 (main)

See merge request fedora/bootc/base-images!203
2025-06-10 15:24:22 +02:00
Platform Engineering Bot
6fc0f812c5 chore(deps): update quay.io/buildah/stable docker tag to v1.40.1
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-10 09:10:24 +00:00
Platform Engineering Bot
90bff25939 chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose:fedora-rawhide-20250609.n.0 docker digest to 2af59ca
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-10 09:09:50 +00:00
6afae06962 Merge branch 'pr/install-manifests' into 'main'
Install bootc-base-imagectl in Pungi path

Closes #44

See merge request fedora/bootc/base-images!201
2025-06-09 20:48:27 +00:00
39a631218f
Install bootc-base-imagectl in Pungi path
Right now, one can't use the official fedora-bootc images for the custom
base image flow because it doesn't actually ship `bootc-base-imagectl`.
This will be fixed by the move to Konflux, but it's not clear when that
will happen.

Given how trivial it is to do, let's just ship it in the image for now.

Closes: https://gitlab.com/fedora/bootc/base-images/-/issues/44
2025-06-09 13:51:00 -04:00
fa9f15e87e
fedora-42: update repos list
Fedora 42 is GA now so use GA repos. This is the legacy Pungi path, but
one should be able to test the legacy paths locally too.

Pungi overrides repos so it doesn't hit this.
2025-06-09 13:48:58 -04:00
f7d48642c0 Merge branch 'renovate/main-fedora-42-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250606.0 (main)

See merge request fedora/bootc/base-images!199
2025-06-09 13:41:01 +02:00
Platform Engineering Bot
d75fe40ed6 chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250606.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-09 10:11:10 +00:00
87997b19a7 Merge branch 'renovate/main-fedora-rawhide-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose docker tag to fedora-rawhide-20250609.n.0 (main)

See merge request fedora/bootc/base-images!200
2025-06-09 12:04:08 +02:00
Platform Engineering Bot
748c6406f7 chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose docker tag to fedora-rawhide-20250609.n.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-09 09:09:32 +00:00
f152a0276e Merge branch 'pr/add-dir' into 'main' v2025.1
bootc-base-imagectl: support injecting directories

See merge request fedora/bootc/base-images!195
2025-06-06 12:28:01 +00:00
c84058dc56 Merge branch 'update-konflux-reference' into 'main'
Update konflux pipeline reference

See merge request fedora/bootc/base-images!198
2025-06-06 12:25:00 +02:00
7b6f00e83f Merge branch 'renovate/main-all' into 'main'
chore(deps): update all dependencies (main)

See merge request fedora/bootc/base-images!59
2025-06-06 00:01:48 +02:00
9181f9ca55
Update konflux pipeline reference 2025-06-05 16:22:03 +02:00
Platform Engineering Bot
a72d41e21a chore(deps): update all dependencies
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-05 14:14:04 +00:00
5d04fcd3b5 Merge branch 'renovate/main-fedora-42-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250605.0 (main)

See merge request fedora/bootc/base-images!196
2025-06-05 16:10:07 +02:00
Platform Engineering Bot
f3259627f4 chore(deps): update quay.io/bootc-devel/fedora-bootc-42-compose docker tag to fedora-42-updates-testing-20250605.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-05 11:09:09 +00:00
1a9d0fc9f5 Merge branch 'renovate/main-fedora-rawhide-compose-dependencies' into 'main'
chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose docker tag to fedora-rawhide-20250605.n.0 (main)

See merge request fedora/bootc/base-images!197
2025-06-05 13:05:02 +02:00
Platform Engineering Bot
5accefc8ad chore(deps): update quay.io/bootc-devel/fedora-bootc-rawhide-compose docker tag to fedora-rawhide-20250605.n.0
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-05 09:10:21 +00:00
02d98c67c7 Merge branch 'update-rawhide-compose' into 'main'
Update Rawhide compose reference in tekton files

See merge request fedora/bootc/base-images!194
2025-06-05 11:01:53 +02:00
e05375b538
Update Rawhide compose reference in tekton files 2025-06-04 16:58:55 +02:00
08254c0ba4 Merge branch 'update-fedora-42-compose-image-ref' into 'main'
Use the compose image with the latest Fedora 42 testing updates

See merge request fedora/bootc/base-images!193
2025-06-04 15:33:58 +02:00
0b558b0378 Use the compose image with the latest Fedora 42 testing updates
Signed-off-by: Miguel Martín <mmartinv@redhat.com>
2025-06-04 14:46:53 +02:00
49e97bfca1 Merge branch 'build-tweaks' into 'main'
Renovate/Konflux builds tweeks

See merge request fedora/bootc/base-images!192
2025-06-04 11:40:44 +02:00
6f2eeb08d6
Adjust konflux pipelines timeout
An update of a compose image from a specific Fedora version
triggers at least 4 builds: 'minimal', 'minimal-plus', 'standard'
and 'iot'.

We usually have 2 compose images updates (Fedora 42 and Rawhide) per
day so up to 8 builds are triggered at the same time. As we don't seem
to have a lot of resources in the Konflux cluster this leads to
build failures because of timeouts (the default pipeline timeout is 1h).

This change tries to mitigate this until we get more resources in the
Konflux cluster.

Signed-off-by: Miguel Martín <mmartinv@redhat.com>
2025-06-04 10:47:46 +02:00
90ce69c71f
Group compose changes per Fedora version
Grouping compose changes per Fedora version will allow
us to retrigger the builds separately in case of failure.

Signed-off-by: Miguel Martín <mmartinv@redhat.com>
2025-06-04 10:46:16 +02:00
7badbd218f
Fix string pattern in 'matchPackageNames'
Signed-off-by: Miguel Martín <mmartinv@redhat.com>
2025-06-04 10:46:16 +02:00
b06288518c
Use patch/build instead of minor/patch in 'versioningTemplate'
According to the documentation 'build' can be used after 'major', 'minor'
and 'patch' have been already used and a fourth version part is needed.

On the other hand, it's only mandatory to use at least one of 'major',
'minor' or 'patch'.

We are using 'patch' and 'build' in compose-images so this change is
to make the versioning consistent among both projects.

Signed-off-by: Miguel Martín <mmartinv@redhat.com>
2025-06-04 10:46:16 +02:00
e520c17c09
Simplify managerFilePatterns
Signed-off-by: Miguel Martín <mmartinv@redhat.com>
2025-06-04 09:45:37 +02:00
e3b9fbd6ba
bootc-base-imagectl: support injecting directories
Right now, the expectation for adding unpackaged content in a custom
base image flow is to do it after the main compose. The problem however
is that sometimes you want that content to affect the main compose
itself, so doing it afterwards is not sufficient.

The primary use case for this is sysusers.d dropins where you need
to make sure that sysusers in scriptlets don't pick UIDs/GIDs already
reserved on target client systems.

One way to work around this is to synthesize an RPM that ships the
dropin, and then ensure that it somehow runs as early as possible in the
transaction. This is doable but obviously quite a hack.

Enable this instead by adding a generic `--add-dir` switch which then
just translates to `ostree-layers` in the override manifest.

The dnf equivalent would be to first install e.g. `filesystem` and
`setup`, add files to the rootfs, and then install all the other
packages.

See also discussions in https://github.com/coreos/rpm-ostree/pull/5354.
2025-06-03 22:05:06 -04:00
f6c94a95ed Merge branch 'pr/set-xeuo-pipefail' into 'main'
manifests: consistently use `set -xeuo pipefail` in postprocess scripts

See merge request fedora/bootc/base-images!190
2025-05-26 21:10:06 +00:00
31ecb7f417 Merge branch 'update-f42-iot-pipelinerun' into 'main'
Update the compose image for the Fedora 42 IoT build pipeline.

See merge request fedora/bootc/base-images!186
2025-05-26 21:47:07 +02:00
27b3462024 Merge branch 'update-f42-minimal-pipelinerun' into 'main'
Update Fedora 42 minimal build pipeline

See merge request fedora/bootc/base-images!187
2025-05-26 21:46:45 +02:00
f4a41aad0c Merge branch 'update-f42-minimal-plus-pipelinerun' into 'main'
Update Fedora 42 minimal-plus build pipeline

See merge request fedora/bootc/base-images!188
2025-05-26 21:45:39 +02:00
ebe3235b3b Merge branch 'update-f42-standard-pipelinerun' into 'main'
Update Fedora 42 standard build pipeline

See merge request fedora/bootc/base-images!189
2025-05-26 21:44:51 +02:00