Commit graph

44 commits

Author SHA1 Message Date
Jonathan Lebon
c03ad7ef75
tests: add test for --sysusers
Exercise the `--sysusers` path added in
https://gitlab.com/fedora/bootc/base-images/-/merge_requests/242.
2025-07-21 11:26:14 -04:00
Timothée Ravier
a6eae6f98e ci: Add basic shellcheck, whitespace & format checks 2025-06-26 13:56:56 +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
a72d41e21a chore(deps): update all dependencies
Signed-off-by: Platform Engineering Bot <platform-engineering@redhat.com>
2025-06-05 14:14:04 +00:00
Dusty Mabe
ef5e95d5bd
whitespace changes to appease downstream CI
The prow/validate job does some various whitespace checks and
was complaining about these so I guess I'll try to make it happy:

```
 [+] Found files with whitespace at the end of line
./fedora-coreos-config/fedora-bootc/.gitlab-ci.yml
./fedora-coreos-config/fedora-bootc/bootc-base-imagectl.md
./fedora-coreos-config/fedora-bootc/fedora-iot.yaml
./fedora-coreos-config/fedora-bootc/iot/manifest.yaml

[+] Found files with missing empty line at end of file
./fedora-coreos-config/fedora-bootc/bootc-base-imagectl
./fedora-coreos-config/fedora-bootc/fedora-iot.yaml
./fedora-coreos-config/fedora-bootc/iot/manifest.yaml
```
2025-05-09 12:52:16 -04:00
Colin Walters
585071ec6e Rename tier-x → minimal-plus
When we renamed tier-0 → minimal and tier-1 → standard, the
naming of tier-x became obsolete. Complete the nomenclature
update.

Closes: https://gitlab.com/fedora/bootc/base-images/-/issues/24
Signed-off-by: Colin Walters <walters@verbum.org>
2025-03-18 10:12:38 -04:00
Colin Walters
e89565789c Use rpmdb-normalize, add rootfs tests
I just saw the sqlite-shm corruption in
https://gitlab.com/redhat/centos-stream/containers/bootc/-/merge_requests/437#note_2372766792
so let's just go ahead and turn on rpmdb_normalize which
also aids the reproducibility of the rpmdb.

While we're here let's also add a long overdue "unit test" for
the rootfs. This operates as a container build that mounts
the container-under-test as part of a multi-stage build.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-02-28 09:14:45 -05:00
Colin Walters
d5810bcd7e ci: Drop tier-x build, do build test case
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
Colin Walters
c89b6f4298 Introduce bootc-base-imagectl
- Embed the manifests into the container image
- Add bootc-base-imagectl which is a tightly controlled frontend
  to execute on those manifests.

For now, we don't attempt to rework how we build the standard
image to actually look like `dnf install`, but we show that
it can work.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-02-25 08:27:20 -05:00
Colin Walters
11a09f4c76 Rename "tier-1" to "standard"
Followup to the rename of "tier-0" to "minimal". The tiers nomenclature
didn't end up working out.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-02-25 08:27:20 -05:00
Colin Walters
d1a21ed159 tier-0: Rename to minimal
The "tiers" nomenclature ended up being unhelpful since
we introduced "tier-x" which is between tier-0 and tier-1.

We also never exposed the tier naming outside of our source
code. In preparation for doing so, rename to tier-0 to
"minimal" which is a bit more descriptive.

Renaming the other images will follow.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-02-25 08:27:19 -05:00
Colin Walters
6f52311f70 ci: Bump to latest buildah
The platform-engineering include is using a truly ancient buildah
image. Stop including that and bump to the latest.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-02-25 08:27:10 -05:00
Jonathan Lebon
2c3aea7d8e
CI: also build tier-0 and tier-x
Let's at least verify tier-0 and tier-x can build fine. Ideally in the
future we actually run some tests on the resulting image, though let's
wait until this CI is migrated to Konflux before doing that.
2024-09-17 22:35:11 -04:00
Liora Milbaum
9bc407619a Use gitlab ci until Konflux is onboarded 2024-05-21 20:46:44 +03:00
Colin Walters
7634b34e2d ci: Disable arm64 for now 2024-04-30 17:20:13 -04:00
Colin Walters
4d53aca22e ci: Copy from base-images-experimental
Let's see if this works.
2024-04-27 08:41:15 -04:00
Colin Walters
de17d5f8d4 gitlab-ci: Drop
No longer used.
2023-11-04 09:52:31 -04:00
Liora Milbaum
a67011d835 Enable pre-commit 2023-10-30 22:27:12 +02:00
Colin Walters
0859928ce6 Drop f38 from image matrix
Ultimately we expect these images to be produced by the OS build
lifecycle, not via our CI.  That's in flight now.  Our primary
targets will anyways be eln and c9s; released Fedora actually
moves more slowly in many cases and that's not what we need
or are interested in here.
2023-10-27 13:43:06 -04:00
Colin Walters
ffcc6aabef Add -dev eln versions too 2023-10-11 13:37:49 -04:00
Colin Walters
ffc8bc146e ci: Drop package install at build time
This is unnecessary now.
2023-10-11 13:21:12 -04:00
Colin Walters
1e163e91d7 ci: Use platform-engineering runner
Should be faster etc.
2023-10-11 08:20:47 -04:00
Colin Walters
c307346620 Add eln builds
We want to track this the same as other streams.
2023-10-10 19:34:15 -04:00
Colin Walters
af071129a5 build: use final builder image
This will have the crypto policies fixes for ELN
2023-10-10 18:39:33 -04:00
Colin Walters
f7efda77fa ci: Add a default target
Prep for use in sagano-builder.
2023-09-23 17:19:49 -04:00
Colin Walters
f5570d3e46 Add -dev images that pull from COPR
To shorten iteration cycles.
2023-09-21 13:12:37 -04:00
Colin Walters
ff195b59c7 ci: Switch to builder image in this namespace 2023-09-21 10:10:24 -04:00
Colin Walters
bd9160e87d ci: Re-disable compose init
Now that the images are built.
2023-09-21 09:48:47 -04:00
Colin Walters
b263dc6714 ci: Force initialize again
For new images.
2023-09-21 09:33:53 -04:00
Colin Walters
52eba0c3df build: Disable force initialization
TODO update to new rpm-ostree
2023-09-20 17:41:32 -04:00
Colin Walters
2a23c89d17 ci: Use base builder 2023-09-20 16:13:03 -04:00
Colin Walters
5d6149ffb9 ci: Switch to builder image
This avoids doing packaging before we do packaging, and paves
the way for doing basic qemu testing.
2023-09-18 18:19:06 -04:00
Colin Walters
7361f26eeb Introduce a tier-0 image
This is basically just:

- kernel
- systemd
- selinux-policy-targeted
- bootc

Notably it doesn't have `rpm-ostree` or `rpm`, or many other things.
It also doesn't even have `linux-firmware`.

And no `openssh`!

It's almost certain that you need to derive from this, but
it should be a suitable starting point.

TODO: Add something like

```
$ dnf-system-bootstrap
Installing packaging tools from quay.io/fedora/fedora-boot-dnf@sha256:abcd...)
 # This would be basically all the packages not in tier-0 that
 # are enough to give `dnf install`
$ dnf install cowsay
 # Install critical stuff
$ dnf system-bootstrap remove
 # Remove everything that we added for the package system, that isn't
 # a dependency of what the user wants!
```

(In theory we could make this work with multi-stage builds, but
 it's a little hard)
2023-09-15 15:11:01 -04:00
Colin Walters
1f66c4c61f Rework naming more in preparation for more tiers 2023-09-15 09:51:48 -04:00
Colin Walters
a356ed897b ci: Re-disable force init
Since we have a c9s build now.
2023-09-08 15:10:06 -04:00
Colin Walters
c464e1d1f2
ci: Another force initialize cycle for c9s 2023-09-08 18:45:22 +00:00
Colin Walters
b501ea1b97
Update .gitlab-ci.yml file 2023-09-08 18:43:02 +00:00
Colin Walters
3afb0b6c90
ci: Also only run test-build on MRs 2023-09-08 17:27:54 +00:00
Colin Walters
3932ccd060
ci: Split MR versus prod builds 2023-09-08 17:25:04 +00:00
Colin Walters
2eb018ce44 ci: Don't --initialize by default
We want change detection.  Also expose `--force-nocache` because
it may be useful in the future.
2023-09-07 17:34:07 -04:00
Colin Walters
c2ec7c0230 ci: Push to integrated registry 2023-09-07 17:16:54 -04:00
Colin Walters
ca41fc9b58 ci: Log into registry
In preparation for pushing.
2023-09-07 17:10:52 -04:00
Colin Walters
843d65aa93 ci: A few fixes
- Need to initialize
- Fix typo for ociarchive
2023-09-07 16:49:40 -04:00
Colin Walters
d0e390602b
ci: Add initial attempt 2023-09-07 20:41:45 +00:00