Commit Graph
100 Commits
Author SHA1 Message Date
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
Colin Walters 13f01e6735 Swap to nfs-utils, not nfs-utils-coreos
The `nfs-utils-coreos` package was created to not depend on
Python mainly, but we are way deep into many other packages
that do at this point.

There's some other package that `Requires: nfs-utils` that
this should fix.
2024-02-14 08:03:03 -05:00
Colin Walters 7966e8931b Add VOLUME /var into container config by default
This meshes with
<https://github.com/ostreedev/ostree/pull/3166/commits/f81b9fa1666c62a024d5ca0bbe876321f72529c7>
in that our container image now behaves by default
similarly to how the host works at runtime.
2024-02-13 18:06:41 -05:00
Colin Walters 53fb07b24c Merge pull request #298 from cgwalters/enable-tmp-mount
tier-0: Enable tmp.mount by default
2024-02-12 17:47:33 -05:00
Colin Walters fb8efab43f tier-0: Enable tmp.mount by default
The long-carried-forward patch to disable `tmp.mount` for RHEL
rears its head again.
2024-02-12 15:06:34 -05:00
Colin Walters 76d079d6c3 Merge pull request #280 from cgwalters/drop-s390x-ppc64le
Temporarily drop s390x/ppc64le builds
2024-02-09 14:15:02 -05:00
Colin Walters 5b7e073463 Temporarily drop s390x/ppc64le builds
These are more flaky, but also bib needs to be built for those
before we can merge https://github.com/CentOS/centos-bootc/pull/277
2024-02-09 11:37:18 -05:00
Colin Walters 9a439dacf3 Merge pull request #275 from cgwalters/drop-unnecessary-bootupd-root
manifests/bootupd: Drop unnecessary /
2024-02-08 07:54:34 -05:00
Colin Walters d933e13974 manifests/bootupd: Drop unnecessary /
It's not supported to pass anything other than `/` now, and
the argument has been optional for some time.
2024-02-07 08:33:21 -05:00
Colin Walters 11bc68471b Merge pull request #268 from rhatdan/main
Add sos package to allow easy reporting of issues
2024-02-06 16:38:38 -05:00
Colin Walters b2fc8df25e Merge pull request #263 from lmilbaum/fix
markdownlint reporting error - line too long
2024-02-05 13:47:40 -05:00
Colin Walters d344254dd5 Merge pull request #245 from mrguitar/patch-2
Update usage.md for air-gapped & disconnected updates
2024-02-05 11:07:25 -05:00
Colin Walters 04424cc59c Merge pull request #259 from cgwalters/add-bootc-label
Add a `containers.bootc` label
2024-02-05 09:28:10 -05:00
Colin Walters b8bfc88c37 Merge pull request #258 from cgwalters/enable-crypt
tier-1: Enable dracut crypt module too
2024-02-05 09:26:57 -05:00
Colin Walters 86c7e64b72 Add a containers.bootc label
Pairs with https://github.com/containers/bootc/pull/299

This is intended to be the new canonical label for bootc-compatible
images, as opposed to the existing `ostree.linux` etc.
2024-02-05 09:00:28 -05:00
Colin Walters d858a847a3 tier-1: Enable dracut crypt module too
We want to support LUKS encrypted root filesystems in general.
We're shipping the code in the root, so we might as well enable
it in the initramfs.
2024-02-05 08:45:11 -05:00
Colin Walters 93588bf969 Merge pull request #232 from cgwalters/machined-compat-true
Start with an empty `/etc/machine-id` to disable `ConditionFirstBoot`
2024-02-03 08:01:21 -05:00
Colin Walters ab4c733179 Merge pull request #219 from cgwalters/add-virtiofs-root
initramfs: Add virtiofs
2024-01-30 13:27:43 -05:00
Colin Walters 256852e764 Start with an empty /etc/machine-id to disable ConditionFirstBoot
The systemd firstboot process does several things, but notably
it runs a preset process.  This means that basically a plain
`RUN systemctl enable foo` won't work unless you *also* write
a preset file for it, and no one will know to do that.
2024-01-30 13:09:43 -05:00
Colin Walters 776e92256b initramfs: Add virtiofs
Today it's built as a module for Fedora derivatives, but
it's a relatively small kmod.

In particular I want to be able to use a virtiofs root as
a bootstrap mechanism to generate disk images in a situation
where we can't do nested containers, but we do have `/dev/kvm` -
which is the setup we have in e.g. OpenShift Prow on `build02`
with nested virt.
2024-01-27 10:57:47 -05:00
Colin Walters 781e554adf Merge pull request #200 from cgwalters/enable-rhsm
rpm-packaging: Add rhsm links
2024-01-26 17:25:18 -05:00
Colin Walters 8c72e66bb0 Merge pull request #205 from cgwalters/doc-bootc-and-systemd-creds
docs/install: Doc direct bootc raw and systemd creds
2024-01-26 15:51:47 -05:00
Colin Walters 7ff2c0151d Merge pull request #207 from cgwalters/doc-ostree-container-commit
docs: Talk about ostree container commit
2024-01-26 13:52:02 -05:00
Colin Walters 45124baff7 docs: Talk about ostree container commit
Came up in chat.
2024-01-25 16:28:52 -05:00
Colin Walters 95ca7361e9 docs: Update now that bib supports c9s now
Hooray!
2024-01-25 15:28:11 -05:00
Colin Walters 708de70bd5 Merge pull request #204 from cgwalters/enable-lvm
tier-1: Enable lvm dracut module
2024-01-25 10:45:58 -05:00
Colin Walters dabf837e32 docs/install: Doc direct bootc raw and systemd creds
First, we're still in a situation where bib doesn't work with c9s.
Let's link to the existing docs for using `bootc install to-disk`
which *does* work (and fixes multiple other bugs at the same time too).

Second: Let's document using systemd credentials to inject a root
SSH key, because this works across every image we ship where
one can inject SMBIOS bits.  (But notably this doesn't work in
most production IaaS virt systems like KubeVirt, AWS etc. which
gets into cloud agents).
2024-01-25 09:55:00 -05:00
Colin Walters 1bfa82ef77 tier-1: Enable lvm dracut module
Right now we have an "allowlist" effectively for our dracut modules
because we specify a configuration in `/usr/lib/dracut/dracut.conf.d`
which seems to turn off autodetection.

Add in lvm which we definitely want to support.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-01-25 09:20:41 -05:00
Colin Walters 603a196eec Merge pull request #199 from cgwalters/install-minor
docs/install: two minor tweaks
2024-01-25 07:53:10 -05:00
Colin Walters c5c5ca9ec0 rpm-packaging: Add rhsm links
This pulls in the code from https://github.com/openshift/os/pull/876/commits/dd35dd0e102aeed90df14f05c8ae9da4c8c5962a
for the same reason.
2024-01-24 20:04:15 -05:00
Colin Walters 73135ea845 docs/install: two minor tweaks
Mainly wanted to clarify the ISO situation.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-01-24 18:10:45 -05:00
Colin Walters b84f3436a7 Merge pull request #196 from cgwalters/more-doc-cleanups
docs/install: Cleanup, move bib earlier
2024-01-24 09:13:35 -05:00
Colin Walters d893dd2aa7 docs/install: Cleanup, move bib earlier
Move bib earlier than anaconda as a more likely entrypoint.
2024-01-24 08:56:47 -05:00
Colin Walters ded33be79a Merge pull request #188 from cgwalters/retrigger
autoupdates: Minor comment cleanup
2024-01-23 13:25:54 -05:00
Colin Walters 2e56406003 autoupdates: Minor comment cleanup
Real motivation is to retrigger a build.
2024-01-23 12:55:27 -05:00
Colin Walters 5e848ba8bd Merge pull request #186 from cgwalters/backout-root-transient
tier-0: back off transient root
2024-01-23 09:28:44 -05:00
Colin Walters 7977ead6e4 tier-0: back off transient root
Until https://github.com/osbuild/bootc-image-builder/issues/149 is
fixed.
2024-01-23 08:11:35 -05:00
Colin Walters 257cbde2d7 Merge pull request #169 from cgwalters/doc-units
docs: Explain about the `systemctl enable` trap
2024-01-23 02:15:10 -05:00
Colin WaltersandValentin Rothberg 568428be35 Update docs/usage.md
Co-authored-by: Valentin Rothberg <vrothberg@redhat.com>
2024-01-22 08:01:58 -05:00
Colin WaltersandValentin Rothberg 856e206ec4 Update docs/usage.md
Co-authored-by: Valentin Rothberg <vrothberg@redhat.com>
2024-01-22 08:01:54 -05:00
Colin Walters 8245847221 Merge pull request #172 from cgwalters/doc-partitioning
usage: Describe filesystem semantics
2024-01-21 11:28:19 -05:00
Colin Walters c93512c6b1 usage: Describe filesystem semantics
I was a bit confused into thinking our `-dev` images had
`root.transient` on, but they don't quite right now because
we don't regenerate the initramfs after installing the updated
ostree in that image.

However, because bootc-image-builder today is throwing away
the immutable bit on `/` (a different bug, see
https://github.com/ostreedev/ostree/pull/3094 ) we actually...
amazingly get a very similar effect in practice!

Anyways, let's go ahead and describe filesystem state here.
2024-01-21 11:11:17 -05:00
Colin Walters 460ba40b76 Merge pull request #171 from cgwalters/fix-autoupdates
autoupdates: Fix to use correct unit
2024-01-21 11:09:39 -05:00
Colin Walters e456c289b5 autoupdates: Fix to use correct unit
Definitely a brown paper bag bug.
2024-01-19 17:43:05 -05:00
Colin Walters abb6a025c2 docs: Explain about the systemctl enable trap 2024-01-19 14:48:38 -05:00
Colin Walters a195894386 Merge pull request #165 from cgwalters/doc-usage
docs/usage: New doc
2024-01-19 09:46:27 -05:00
Colin Walters 820837e765 docs/usage: New doc
There is some overlap with `install.md`, but that doc is all about
how to just get started.

This doc aims to cover things that are somewhat different about
the base image we ship here versus just what one might get
from installing the same RPM packages.

The automatic updates being on by default is a big one.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-01-19 09:44:59 -05:00
Colin Walters 67462b0dbc Enable bootc-fetch-apply-updates.service by default
This landed in https://github.com/containers/bootc/pull/179/commits/c13c9eb8dcd829db0b8d35a526ee7a0e9bc91e97
And we want to come out emphasizing it.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-01-18 18:21:44 -05:00
Colin Walters 626d460101 Merge pull request #154 from cgwalters/c9s-dev-compose
docs: Describe how to avoid home directory persistence
2024-01-18 12:16:47 -05:00
Colin Walters 0a935522b1 docs: Describe how to avoid home directory persistence
Since many if not most of our initial target use cases I think
don't want this.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-01-18 10:35:02 -05:00
Colin Walters 4f3f2b432f Merge pull request #136 from cgwalters/c9s-dev-compose
c9s: Pull in odcs-4383
2024-01-16 13:36:31 -05:00
Colin Walters e374bcc51a c9s: Pull in odcs-4383
Hopefully this fixes https://github.com/CentOS/centos-bootc/issues/124
I verified at least that compose has the changes from
https://gitlab.com/redhat/centos-stream/release-engineering/pungi-centos/-/merge_requests/537
2024-01-16 12:54:06 -05:00
Colin Walters f3ee0d0e0a Merge pull request #135 from CentOS/renovate/fedora-eln-20240116.x
chore(deps): update dependency fedora-eln to fedora-eln-20240116.3
2024-01-16 12:47:53 -05:00
Colin Walters 6553f32ebb Merge pull request #130 from cgwalters/base-add-bootc
tier-0: bootc is now in c9s
2024-01-15 13:21:52 -05:00
Colin Walters 7326c3686a tier-0: bootc is now in c9s
So drop the conditional.
2024-01-15 09:33:53 -05:00
Colin Walters 4d5e1d86fb Merge pull request #123 from cgwalters/pointless-rebuild
docs: Link a commonly hit issue
2024-01-11 09:41:12 -05:00
Colin Walters c3124cad03 docs: Link a commonly hit issue
(I also pinned that and one other issue on that repo)
2024-01-10 13:30:46 -05:00
Colin Walters 08814100c1 Merge pull request #112 from sallyom/update-docs
update docs for bootc release 0.1.5
2023-12-20 14:03:25 -05:00
Colin Walters 948f774a70 Merge pull request #72 from poncovka/main-reqpart
docs: Remove workarounds from example.ks
2023-12-15 14:05:15 -05:00
Colin Walters d3f38f6089 Merge pull request #108 from cgwalters/doc-user-groups
docs: Add users and groups
2023-12-15 07:59:44 -05:00
Colin Walters 231a0f9669 Merge pull request #107 from cgwalters/add-subman
Add subscription-manager
2023-12-14 15:32:48 -05:00
Colin Walters 36041681ae docs: Link to existing example repo
I've started to put more content there.
2023-12-14 15:31:46 -05:00
Colin Walters a586acb8f5 docs: Add users and groups
Since this is a complex tricky topic.
2023-12-14 15:31:01 -05:00
Colin Walters 929e3e58e4 Add subscription-manager
We need this to access RHEL RPM content today.

(I would like longer term to be able to fetch RPMs from registries
 with a pull secret, xref https://github.com/coreos/rpm-ostree/issues/4155 )
2023-12-13 14:39:28 -05:00
Colin Walters b65d2c5bdc Merge pull request #105 from cgwalters/fix-bootc-to-eln
tier-0: bootc is only in eln
2023-12-13 13:53:30 -05:00
Colin Walters 21ea7dd3c9 Merge pull request #104 from cgwalters/enable-development-bootupd
Add devel composes (off by default), but pull in new bootupd
2023-12-13 08:00:50 -05:00
Colin Walters de03b77962 Merge pull request #103 from cgwalters/dracut-fixes
Dracut fixes
2023-12-13 08:00:40 -05:00
Colin Walters 6c9d3b8b62 tier-0: bootc is only in eln
Prep for building with non-stream9 distros.

(TODO: add a dedicated variable for this at the toplevel)
2023-12-12 15:38:10 -05:00
Colin Walters d49c4299a1 Merge pull request #102 from CentOS/rhtap/references/main
chore(deps): update rhtap references
2023-12-12 15:33:10 -05:00
Colin Walters a9560ae57d Add devel composes (off by default), but pull in new bootupd
This fixes compatibility with `bootc install` in BIOS mode.
2023-12-12 13:28:10 -05:00
Colin Walters b943729fb2 initramfs: Also enable ostree module
rpm-ostree does this, but let's do it here too for
extra reliability.
2023-12-12 12:33:37 -05:00
Colin Walters ecbd78af68 initramfs: Consolidate and rename drop-initramfs
No reason to have the "base" settings in distinct files.
2023-12-12 11:32:49 -05:00
Colin Walters 48c85849e6 initramfs: Move our dracut config later
Our hostonly setting was conflicting with the default
`hostonly=yes` in `01-dist.conf`.
2023-12-12 11:31:05 -05:00
Colin Walters 3d4706c2e9 Merge pull request #99 from cgwalters/doc-builds
docs: Add a builds.md
2023-12-10 10:45:48 -05:00
Colin Walters d9a4b02b54 Merge pull request #100 from cgwalters/enable-root-config-c9s
Always add bootc install config
2023-12-10 09:55:25 -05:00
Colin Walters 9149bc46eb docs: Add a builds.md
About time we start this.
2023-12-08 12:51:16 -05:00
Colin Walters dd0a042a17 Always add bootc install config
bootc isn't in C9S yet, but it is in the -dev images.  Add
the install config unconditionally so that `bootc install`
works in the `centos-bootc-dev` image.
2023-12-08 12:45:42 -05:00
Colin Walters e6761c23bc ostree: Enable root.transient = true by default
This turns on the functionality added in
https://github.com/ostreedev/ostree/pull/3114
2023-12-08 08:08:05 -05:00