Commit Graph
100 Commits
Author SHA1 Message Date
Colin Walters 8a6332e491 Merge tier-1 to the toplevel
Now we just have a minimal base, and what was tier-1 is now
just the default content.

We still do capture the previous conception of "tier-x" in
`packages-recommended-minimal.txt` so that people starting
from scratch can install using that.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters d6f376b36e Move growfs and autoupdates into tier-1/usr overlay, use preset
Instead of having postprocessing scripts for these, add
them to the overlay. Also instead of hand rolling static systemd
enablement, add and use a preset file for them instead.

(This also makes it easier for downstream container images
 to rerun the presets if they wanted to)

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 176ede2332 Split excluded and arch packages into "package text file"
Aiming to have the main container build not use rpm-ostree.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 3addf4c691 Move persistent-journal into base
This is something we want people to have by default.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters a14ba65620 Drop unused fedora-tier-1
Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters e2aa69433c Move fedora-repos-archive into base
Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 1901092f5d Move labels into Containerfile.base
Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 2a387e2167 ci: Rework
Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 255780a9d0 Rename tier-0 -> base
Part of dropping the "tier" nomenclature which never made sense
since the introduction of `tier-x` anyways.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 08928a103a tier-x -> packages-recommended.txt
That's basically all this is...plus a default
inheritance from the base image.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 029e4c7038 Split off Containerfile.base
Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 19b046d36d Drop support for pungi
The only interface to building this image will be via Containerfile
now.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-23 11:37:04 -05:00
Colin Walters 92e7c1b2e1 tier-0: Add /var/lib/rpm-state by default
This empty directory is required by some RPM scripts. Historically
rpm-ostree's script invocations made this by default, but that
doesn't happen with direct rpm or dnf.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-22 10:24:48 -05:00
Colin Walters 06fddc9007 growpart: Add ConditionPathExists=/usr/bin/growpart
Hopefully eventually this gets rewritten in not-shell-script
and put somewhere saner. For now, avoid failing if people have
trimmed their images.

The growpart problem only comes with bootc-image-builder and
cloud environments anyways, it's not something we hit with
Anaconda installs or `bootc install to-filesystem`, so we can
avoid this.

Closes: https://gitlab.com/fedora/bootc/base-images/-/issues/34

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-14 10:26:11 -05:00
Colin Walters 934570054e Revert "tier-0: Drop dnf"
This reverts commit d7142132b7.
2025-01-14 10:16:39 -05:00
Colin Walters d7142132b7 tier-0: Drop dnf
We will have a better way to make derived container images
that doesn't require having dnf in the base image.

Prep for more minimal and custom images.

Signed-off-by: Colin Walters <walters@verbum.org>
2025-01-13 10:01:02 -05:00
Colin Walters 535cea4155 Split out postprocess-conf.yaml
Prep for working on custom base images. We want to support
operating on rootfs that may not have been generated by
rpm-ostree.

Split this out as something that can gets passed separately
to `rpm-ostree compose postprocess/commit`.
2025-01-13 09:21:26 -05:00
Colin Walters 444acb374b Drop kernel-rt.yaml
It's unused right now and we are going to replace it with better
mechanisms.
2025-01-13 08:31:35 -05:00
Colin Walters 7369824a54 tier-0: Drop unused bootc-config.yaml
This file went empty a while ago when we moved the default
filesystem bits to the centos-stream image.
2025-01-03 16:11:15 -05:00
Colin Walters b991db43cb README.md: Slightly more docs for tiers
Explain that we aren't shipping anything but tier-1, link
to the custom base image work.
2024-12-20 15:50:40 -05:00
Colin Walters 279b050acb Create var/run -> ../run by default
Signed-off-by: Colin Walters <walters@verbum.org>
2024-12-13 09:17:41 -05:00
Colin Walters 7d5a0646a5 Update to 2024 edition
Prep for using finalize.d, but this is also just
a minor cleanup.
2024-12-13 09:17:41 -05:00
Colin Walters b22d3422f4 containerfile: Drop use of bootc-image-builder
This just adds confusion in the end. Switch to bootstrapping
from the app image.
2024-10-03 16:28:49 -04:00
Colin Walters e5d5452ace README.md: Clarify a few things
- Make very clear that tier-1 is the default image
- Link to our issue tracker for supportable base image customization
- Note use of `--build-arg=MANIFEST`.

etc.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-09-18 09:11:05 -04:00
Colin Walters 0e9bf457eb Revert "bootc: Drop gdisk"
This reverts commit 5d8e7a5f6b.

Because I was confused, bootc does require it right now.
2024-09-03 08:48:51 -04:00
Colin Walters 5d8e7a5f6b bootc: Drop gdisk
See https://gitlab.com/redhat/centos-stream/containers/bootc/-/merge_requests/198
and https://issues.redhat.com/browse/RHELMISC-6651 etc.
2024-08-30 09:02:39 -04:00
Colin Walters 0da319f566 initramfs: Switch to add_dracutmodules
Per discussion in https://github.com/rhkdump/kdump-utils/pull/29#issuecomment-2303932537

This would have avoided kdump breakage, and the original motivation
of avoiding dracut error spam from missing things is gone now
that Fedora is using dracut-ng which has
https://github.com/dracut-ng/dracut-ng/commit/d73cc24e112c01aa701a96a7b8a58adce78409e7
2024-08-22 09:38:07 -04:00
Colin Walters ee7ceb348c system-config: Add crypto-policies-scripts
Addresses https://gitlab.com/fedora/bootc/examples/-/issues/14

Signed-off-by: Colin Walters <walters@verbum.org>
2024-08-13 10:33:31 -04:00
Colin Walters 73fca28298 initramfs-full: Add fips
Part of enabling FIPS support by default.
See also https://gitlab.com/fedora/bootc/examples/-/merge_requests/49
2024-07-01 20:46:05 -04:00
Colin Walters fb882c9002 manifest: Unconditionally include bootupd
It's supported on all architectures now, even if it's
a no-op mostly on s390x today.

But specifically this will ensure we pull in zipl on s390x,
which *is* needed.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-05-29 13:50:59 -04:00
Colin Walters 33ba2536f3 Add fedora-repos-archive
For the same reason FCOS has included it forever; it allows
some skew between images and the RPM mirrors for version-sensitive
things like `kernel-devel`.

Closes: https://gitlab.com/fedora/bootc/base-images/-/issues/12
Signed-off-by: Colin Walters <walters@verbum.org>
2024-05-28 17:15:53 -04:00
Colin Walters 5bc105da9a networking: Drop NetworkManager-team & teamd
See https://github.com/coreos/fedora-coreos-tracker/issues/1727
2024-05-20 15:52:08 -04:00
Colin Walters 576a9ccf2c ux: Drop runc
- It isn't queued to ship in rhel10
- It duplicates crun
2024-05-20 15:49:39 -04:00
Colin Walters b69e7d90bf user-experience: Resync with FCOS
I don't entirely remember what happened here when forking from
CoreOS, but we definitely want toolbox and lsof at least, just
looking at the differences.

While we're here I did readd sos, but in another section.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-05-03 16:34:22 -04:00
Colin Walters c6afc8fde1 config: Add ENV container=oci
xref https://bugzilla.redhat.com/show_bug.cgi?id=2278652

I think this is a best practice for base images;
2024-05-02 12:39:57 -04:00
Colin Walters ae9118576b Add bootc-generic-growpart
This service is a backfill for lack of a better option
as a baseline to run in cloud/virt environments:

- Without cloud-init
- Even with cloud-init, as it doesn't yet support growing
  on ostree/composefs

Signed-off-by: Colin Walters <walters@verbum.org>
2024-05-01 10:31:12 -04: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 79f64a0bcd Containerfile: Make generic
It's already used with `--from` in places, and this way
we have a default.
2024-04-27 08:41:15 -04:00
Colin Walters c9a59348fc Remove centos bits
This will live in a centos git repo.
2024-04-25 11:24:21 -04:00
Colin Walters 8677221b2e README: Update docs link 2024-04-25 11:20:11 -04:00
Colin Walters f99578e9d5 tekton: s/centos/fedora/
Not sure if this will work, but let's see.
2024-04-25 11:12:08 -04:00
Colin Walters d1ade2c600 Merge pull request #489 from cgwalters/rework-buildcontext-copy
build-sys: Sync Containerfiles
2024-04-22 09:12:05 -04:00
Colin Walters 9ee47bdeef build-sys: Sync Containerfiles
- The centos-stream9 one was removing the `.repo` files from
  the buildcontext, which is just wrong; we don't want to change
  the input git repo
- Use WORKDIR /src to simplify things
2024-04-20 09:53:13 -04:00
Colin Walters 8c9e5702ee Merge pull request #487 from cgwalters/split-centos-conditionals
Only set default filesystem to XFS in CentOS
2024-04-20 09:01:12 -04:00
Colin Walters 203ce2a72f build: Pass --image-config
Oops.
2024-04-19 07:31:50 -04:00
Colin Walters 77ec4be727 Add Containerfile.fedora-40
Let's build this again.
2024-04-18 17:35:51 -04:00
Colin Walters cfafc9e78a Only set default filesystem to XFS in CentOS
Fedora default filesystem is a messier situation.  This makes
it easier to inherit Fedora builds.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-04-18 17:20:36 -04:00
Colin Walters eb71457f6f build: Rename centos-bootc.yaml to centos-stream-9-tier-1.yaml
When we went back to the "one big image" model we simplified
things to just `centos-bootc.yaml`.  But since stream10 is
here, and I think we do want to revisit having smaller images,
let's rename it back.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-04-18 17:08:11 -04:00
Colin Walters 7d361eae22 fedora.repo: Drop trailing whitespace
The precommit is a bit annoying.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-04-18 16:33:36 -04:00
Colin Walters 54cd3ebbe3 c9s: Just use production compose
I noticed we weren't getting updates and I think the
core problem here is renovate was only triggering on
the devel compose.  But we just "floated" to whatever
was found in the production compose as a base.

Also we had a random copr.

Drop that stuff, and just pin on the production compose.
2024-04-16 18:00:03 -04:00
Colin Walters 8c1487f0f8 Merge pull request #480 from pcdubs/rawhide
Move eln to its own configs, add rawhide and devel to repos
2024-04-11 15:40:07 -04:00
Colin Walters 9c3f57e9cd Merge pull request #482 from cgwalters/include-vim-minimal
manifest: Add vim-minimal
2024-04-11 13:50:17 -04:00
Colin Walters 5179418ee4 manifest: Add vim-minimal
This got lost in the shuffling.
2024-04-11 13:42:46 -04:00
Colin Walters 71cbd2295c Merge pull request #478 from cgwalters/containerfile.c10s
Add c10s
2024-04-08 09:35:57 -04:00
Colin Walters 254c7b2060 Add c10s
It's not too early to start this.
2024-04-06 10:27:48 -04:00
Colin Walters 52bc372368 Merge pull request #453 from cgwalters/diskimage-builder
Add a `bootc.diskimage-builder` label
2024-04-05 09:06:10 -04:00
Colin Walters aaa6fe7345 Merge pull request #467 from CentOS/renovate/all
chore(deps): update actions/setup-python action to v5.1.0
2024-04-05 09:04:02 -04:00
Colin Walters 19ead2b16a Merge pull request #476 from cgwalters/rm-docs
docs: Remove
2024-04-02 15:22:11 -04:00
Colin Walters 9b834a40bf Merge pull request #456 from CentOS/konflux/references/main
chore(deps): update rhtap references
2024-04-02 15:16:56 -04:00
Colin Walters 5dfd201832 docs: Remove
This is moved to https://gitlab.com/bootc-org/documentation for
now.
2024-04-02 15:10:45 -04:00
Colin Walters 44561ffb9b Add a bootc.diskimage-builder label
Right now, the relationship between this image and bootc-image-builder
is "floating".  However, we may want the ability to more
strictly bind the two in the future.

With this, the bootc image links out to the recommended diskimage
builder container, so automated tooling can find it instead
of hardcoding it.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-04-02 14:04:02 -04:00
Colin Walters d803c69770 Drop fedora-bootc-config.json
It's not used now.
2024-04-02 14:03:46 -04:00
Colin Walters a57fa41a61 Drop fedora-bootc:eln image
In order to streamline the focus, let's drop fedora-bootc:eln.

- We want to be moving container builds into upstream distributions anyways
- Building two containers from one git repository is awkward in Tekton
2024-04-02 12:01:40 -04:00
Colin Walters 6ce4964e7d Merge pull request #445 from CentOS/konflux/references/main
chore(deps): update rhtap references
2024-03-26 13:44:38 -04:00
Colin Walters 6eea18da53 Merge pull request #452 from cgwalters/entrypoint-cmd
Switch to systemd by default
2024-03-26 12:59:51 -04:00
Colin Walters 2d4c35279a Switch to systemd by default
Closes: https://github.com/CentOS/centos-bootc/issues/449
2024-03-26 12:27:29 -04:00
Colin Walters e18ac3fb7b Merge pull request #446 from cgwalters/weird-dockerfile
ci: Add a Containerfile-based workflow
2024-03-25 13:21:21 -04:00
Colin Walters 257c791461 ci: Add a Containerfile-based workflow
This is a small but notable step towards making the build
process more container native.  The rpm-ostree bits
are hidden much more.  We use a special trick
specific to podman/buildah to do `FROM oci-archive`
on an oci-archive that was built in a previous image
stage.

This lets us do things not possible in a Containerfile
that is basically about total control over the image
layers:

 - Output content-addressed reproducible "chunked" layers
 - Choose whether or not to use zstd for layers

See discussion in e.g.
https://github.com/coreos/rpm-ostree/issues/4688

Signed-off-by: Colin Walters <walters@verbum.org>
2024-03-25 10:53:58 -04:00
Colin Walters 8238f083a8 Merge pull request #444 from cgwalters/readme-change2
README.md: Pointless change to try to retrigger container push
2024-03-19 15:47:26 -04:00
Colin Walters 82c0a447a9 Merge pull request #438 from cgwalters/opt-usrlocal
Add opt-usrlocal: root
2024-03-19 10:22:43 -04:00
Colin Walters 9b676228ee Add opt-usrlocal: root
We want content lifecycled with the image.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-03-19 09:00:15 -04:00
Colin Walters ecb02545d3 Merge pull request #440 from mvo5/fix-roothome
basic-fixes: Tweak basic-fixes: Tweak tmpfiles.d/provision.conf
2024-03-18 10:46:32 -04:00
Colin Walters 4f864a39f5 README.md: Pointless change to try to retrigger container push
Hopefully this re-triggers a container build.
2024-03-18 08:59:20 -04:00
Colin Walters f8486c6545 Merge pull request #424 from CentOS/konflux/references/main
chore(deps): update rhtap references
2024-03-18 08:53:55 -04:00
Colin Walters aaf953ed7e Merge pull request #425 from cgwalters/workaround-root
ostree: Switch to composefs enabled = yes
2024-03-13 16:07:51 -04:00
Colin Walters 86bc5473d3 ostree: Switch to composefs enabled = yes
This is the opposite workaround for
https://github.com/ostreedev/ostree-rs-ext/issues/612

However, we still need to finally make `/opt` a directory
to complete this, which currently wants changes in rpm-ostree.
(Or, we could tweak our build process to inject as a container
 afterwards)
2024-03-13 12:37:01 -04:00
Colin Walters a26d669340 system-configuration: Add cloud-utils-growpart
This is a relatively small shell script, and was already split out
from cloud-init to support use cases like ours.

systemd-repart is a lot nicer but it isn't yet designed
for our use case (root is not Discoverable Partition).

Also systemd-repart doesn't handle LVM which this script
tries to support.

(IMO the real solution to stuff like this is either Stratis
 or equivalent)
2024-03-04 19:40:10 -05:00
Colin Walters a95c22ac4e docs: Link to new docs site
I've copied (and slightly cleaned up) all the existing docs
into a new dedicated git repository in

https://bootc-org.gitlab.io/documentation/
2024-03-03 09:34:22 -05:00
Colin Walters e49fe2b724 Merge pull request #356 from cgwalters/enable-composefs-transient
Enable composefs root
2024-03-01 14:10:04 -05:00
Colin Walters 2257dd6cb5 Enable composefs root
This partially reverts commit 7977ead6e4 and
effectively migrates the change from https://github.com/CentOS/centos-bootc-dev/pull/27/commits/8f5be0937144b602d8c1fdcaff4c51777b8cb254
and https://github.com/CentOS/centos-bootc-dev/pull/32/commits/14ab1c5847afbd5a47c5fd023c0720e4a6d99b31
to here.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-03-01 13:52:11 -05:00
Colin Walters ec050c0ae6 Merge pull request #381 from cgwalters/add-fasttrack
Add a copr for fast tracks
2024-03-01 10:41:23 -05:00
Colin Walters 5cfd1a21ac Merge pull request #380 from cgwalters/drop-eln-presubmit
ci: Drop fedora:eln
2024-03-01 09:37:48 -05:00
Colin Walters 714cd4e2a1 Add a copr for fast tracks
I'd REALLY resisted doing this for a long time, because it
basically "forks" us from c9s.  However, the c9s "devel" composes
are down to potentially *once a week* due to storage issues.

This one fast tracks https://kojihub.stream.centos.org/koji/buildinfo?buildID=59709
2024-03-01 09:05:26 -05:00
Colin Walters 669cc88c59 ci: Drop fedora:eln
This is a smaller version of https://github.com/CentOS/centos-bootc/pull/364
2024-03-01 08:07:44 -05:00
Colin Walters 32feb425b6 Merge pull request #371 from cgwalters/fix-root-ssh
basic-fixes: Tweak `/usr/lib/tmpfiles.d/provision.conf`
2024-02-29 10:50:43 -05:00
Colin Walters 1688a6f9cb basic-fixes: Tweak /usr/lib/tmpfiles.d/provision.conf
This ensures that systemd's creation of `/root` works instead
of falling back to what we have in
`/usr/lib/tmpfiles.d/rpm-ostree-0-integration.conf` for
`d /var/roothome 0700 root root -` which in turn ensures
that both the credential values as well as bootc's injection
of a tmpfiles.d snippet for root SSH key works.

https://github.com/containers/bootc/issues/358
Signed-off-by: Colin Walters <walters@verbum.org>
2024-02-28 08:23:06 -05:00
Colin Walters 8ac2e8e2d0 Merge pull request #360 from CentOS/konflux/references/main
chore(deps): update rhtap references
2024-02-27 16:39:04 -05:00
Colin Walters 1a114eb0bf Merge pull request #357 from cgwalters/fast-track-bootc-ostree
c9s: Pull in latest bootc/ostree
2024-02-27 16:37:40 -05:00
Colin Walters 984a4ca743 Merge pull request #363 from cgwalters/link-podmanbootc
docs/install: Revamp
2024-02-27 14:30:59 -05:00
Colin Walters 0eb2691449 docs/install: Revamp
- Split into "local virt" and "production"
- Link to podman-desktop-extension-bootc
- Link to podman-bootc-cli
- Clean up, fix and inline kickstart example for readability
- Include bootc-image-builder in both local and production paths
2024-02-27 14:30:13 -05:00
Colin Walters 195f1fb821 c9s: Pull in latest bootc/ostree
On general principle, but specifically to enable transient root.
2024-02-26 16:52:58 -05:00
Colin Walters fae9fedbc0 Merge pull request #322 from CentOS/rhtap/references/main
chore(deps): update rhtap references
2024-02-16 10:58:00 -05:00
Colin Walters 06afef6db7 Merge pull request #313 from cgwalters/revert-volume
Revert "Add `VOLUME /var` into container config by default"
2024-02-14 15:52:01 -05:00
Colin Walters 612af827ff Revert "Add VOLUME /var into container config by default"
This reverts commit 7966e8931b.
It just breaks derived builds across the board.
2024-02-14 15:34:08 -05:00
Colin Walters fb02af24c5 Merge pull request #311 from cgwalters/regular-nfs
Swap to nfs-utils, not nfs-utils-coreos
2024-02-14 09:22:14 -05:00
Colin Walters 8b24b36e21 Merge pull request #306 from cgwalters/volumes
Add `VOLUME /var` into container config by default
2024-02-14 09:22:04 -05:00
Colin Walters a3e8fac0de Merge pull request #277 from cgwalters/use-bib
build: Use bib
2024-02-14 09:01:47 -05:00
Colin Walters 8791b5bcf2 build: Use bib
- It's not worth shipping around a distinct build container;
  bootc-image-builder already has all the dependencies we need
  since https://github.com/osbuild/bootc-image-builder/pull/176/commits/44d15acded8641499ea6b4c5d2acceb1bd9694b2
- I'd like to add a more first-class mechanism in bib to build
  base images
2024-02-14 08:21:04 -05:00
Colin Walters 45ba3ce4f9 Merge pull request #310 from CentOS/rhtap/references/main
chore(deps): update rhtap references
2024-02-14 08:04:53 -05:00