Go to file
Colin Walters 01e484a6c2 Merge branch 'use-builder-image' into 'main'
ci: Switch to builder image

See merge request cgwalters-playground/sagano!18
2023-09-18 23:33:59 +00:00
tier-0 manifests: Split out firmware, do use bootable-rpm-ostree 2023-09-15 17:30:44 -04:00
tier-1 firmware: Include fwupd 2023-09-15 17:51:21 -04:00
.gitlab-ci.yml ci: Switch to builder image 2023-09-18 18:19:06 -04:00
COPYING Initial split from Fedora CoreOS 2022-12-09 15:32:25 -05:00
LICENSE Initial split from Fedora CoreOS 2022-12-09 15:32:25 -05:00
README.md README.md: Update for git rename, new tiers etc. 2023-09-15 16:38:38 -04:00
c9s.repo Fix typo 2023-03-04 09:45:57 -05:00
centos-stream-9.yaml Introduce a tier-0 image 2023-09-15 15:11:01 -04:00
centos-tier-0-rt-stream9.yaml Introduce a tier-0 image 2023-09-15 15:11:01 -04:00
centos-tier-0-stream9.yaml Introduce a tier-0 image 2023-09-15 15:11:01 -04:00
centos-tier-1-rt-stream9.yaml Introduce a tier-0 image 2023-09-15 15:11:01 -04:00
centos-tier-1-stream9.yaml Introduce a tier-0 image 2023-09-15 15:11:01 -04:00
fedora-next.repo Add a c9s build 2022-12-09 15:52:45 -05:00
fedora-rawhide.repo Add a c9s build 2022-12-09 15:52:45 -05:00
fedora-tier-0-38.yaml Introduce a tier-0 image 2023-09-15 15:11:01 -04:00
fedora-tier-1-38.yaml Rework naming more in preparation for more tiers 2023-09-15 09:51:48 -04:00
fedora.repo Add a c9s build 2022-12-09 15:52:45 -05:00

README.md

Demonstration base images for Project Sagano

This is part of Project Sagano.

These images are technology demonstrators, not for production use. The intention is that these images are generated by the OS vendor or distribution. Or, you can fork this repository and generate your own via rpm-ostree compose image.

Operating system sources

At the moment these demonstration builds use Fedora 38 and CentOS Stream 9.

Tiers

Tier 0

This is the basic tier; it has effectively just:

  • kernel systemd selinux-policy-targeted bootc

You are generally going to need to generate derived images from this; installing it on its own will boot to a system with no automatic networking support, no SSH, and no default passwords etc.

Tier 1

This is larger system.

  • NetworkManager, chrony
  • rpm-ostree (to install packages and in case it's useful "day 2")
  • openssh-server

At the current time, it does not include Ignition or cloud-init; so you will still need to derive from it in order to inject a mechanism to log in in many cases. However, it will work to install it using e.g. Anaconda and set up users and passwords that way.

Image matrix (Fedora)

  • registry.gitlab.com/cgwalters-playground/sagano/fedora-boot-tier-0:38
  • registry.gitlab.com/cgwalters-playground/sagano/fedora-boot-tier-1:38

Image matrix (CentOS Stream 9)

  • registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-0:stream9
  • registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-0-rt:stream9 (realtime kernel)
  • registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-1:stream9
  • registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-1-rt:stream9 (realtime kernel)

More about image sources

The current manifest definitions tier-0 and tier-1 were forked from Fedora CoreOS, but significantly cut down.

The existing content set is obviously subject to change and debate.

Building

Here's an example command:

$ sudo rpm-ostree compose image --authfile ~/.config/containers/myquay.json --cachedir=cache -i --format=ociarchive centos-tier-0-stream9.yaml centos-tier-0-stream9.ociarchive

In some situations, copying to a local .ociarchive file is convenient. You can also push to a registry with --format=registry.

More information at https://coreos.github.io/rpm-ostree/container/

Plan

Phase 0

Phase 1