-
Notifications
You must be signed in to change notification settings - Fork 49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for building images from ostree containers and the Fedora CoreOS qcow2 image type #243
Commits on Nov 20, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 6046a59 - Browse repository at this point
Copy the full SHA 6046a59View commit details -
osbuild: add ostree.deploy.container stage
Creates an org.osbuild.ostree.deploy.container stage. Validates the options with a regular expression that matches the schema. Takes a container as input. Validates the length of the input references to be exactly 1. See osbuild/osbuild#1402
Configuration menu - View commit details
-
Copy full SHA for ec636aa - Browse repository at this point
Copy the full SHA ec636aaView commit details -
manifest: only set one ostree commit in OSTreeDeployment
The pipeline either way only supported one ostree commit, enforced when adding the resolved commits to the pipeline during serializeStart() and by checking the array length during serialize(). To simplify the requirement and avoid potential confusion when reading the struct itself, replace the array on the pipeline struct definition with a single commit spec (pointer) and keep the len == 1 check in the serializeStart() function that, by its interface, must accept an array. Also document the commit fields for OSTreeDeployment. These are private, so they wont show up in public API docs, but it's still useful to have them documented in the code.
Configuration menu - View commit details
-
Copy full SHA for 8900ce6 - Browse repository at this point
Copy the full SHA 8900ce6View commit details -
manifest: add a container source to OSTreeDeployment
Support a container source for OSTreeDeployment as an alternative to the ostree commit source. Currently, if a container is defined, it fails with an error. The commit source and the container source are now both pointers since they can be unset, but (will) we need to make sure at least one is set when serializing.
Configuration menu - View commit details
-
Copy full SHA for f77f860 - Browse repository at this point
Copy the full SHA f77f860View commit details -
manifest: run ostree pull right before ostree deploy
Move the ostree pull stage to be right before the ostree deploy stage. This should have no functional impact on the build and will make it easier to replace the two stages together. Old vs new stage order: org.osbuild.ostree.init-fs | org.osbuild.ostree.init-fs org.osbuild.ostree.pull | org.osbuild.ostree.os-init org.osbuild.ostree.os-init | org.osbuild.mkdir org.osbuild.mkdir | org.osbuild.ostree.pull org.osbuild.ostree.deploy | org.osbuild.ostree.deploy
Configuration menu - View commit details
-
Copy full SHA for 70faccf - Browse repository at this point
Copy the full SHA 70faccfView commit details -
manifest: add ostree deploy stages conditionally
When creating the ostree deployment pipeline, add the appropriate stages only when the ostree commit is specified. The stages are: org.osbuild.pull org.osbuild.ostree.deploy org.osbuild.ostree.remote org.osbuild.ostree.fillvar
Configuration menu - View commit details
-
Copy full SHA for 2f90dd1 - Browse repository at this point
Copy the full SHA 2f90dd1View commit details -
manifest: add a second constructor for ostree container deployment
Rename the NewOSTreeDeployment() constructor to NewOSTreeCommitDeployment() and add a second one called NewOSTreeContainerDeployment(). Each takes a different kind of source spec (ostree commit or container). The container constructor also requires the ref to be specified since it's not part of the container spec.
Configuration menu - View commit details
-
Copy full SHA for b0362f9 - Browse repository at this point
Copy the full SHA b0362f9View commit details -
manifest: add ostree.deploy.container stage to ostree deployment
Add the org.osbuild.ostree.deploy.container stage when the content source for the deployment is a container.
Configuration menu - View commit details
-
Copy full SHA for 09216f6 - Browse repository at this point
Copy the full SHA 09216f6View commit details -
image: support both commit and container sources for OSTreeDiskImage
Support both content source types on the OSTreeDiskImage ImageKind. A second constructor is defined, just like with the deployment pipeline of the image. The original constructor is renamed to NewOSTreeDiskImageFromCommit to differentiate and have a more informative name.
Configuration menu - View commit details
-
Copy full SHA for ab9dbbc - Browse repository at this point
Copy the full SHA ab9dbbcView commit details -
manifest: remove ignition options from OSTreeDeployment constructor
Only required properties should be specified through the constructor to make sure they are not accidentally left empty or nil. Optional properties are added via public fields of the pipeline object. Since the ignition platform is optional, change it to a public field. Also, to simplify the interaction between the two ignition properties, remove the boolean that signifies if ignition should be enabled and use the IgnitionPlatform string instead. Treat the empty string as the disabled value.
Configuration menu - View commit details
-
Copy full SHA for ac25081 - Browse repository at this point
Copy the full SHA ac25081View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74df68a - Browse repository at this point
Copy the full SHA 74df68aView commit details -
distro/fedora: add coreosImage function
A new image functions called coreosImage() that requires a container source and creates a qcow2 image from a CoreOS ostree container. Based on the example manifest added in osbuild/osbuild#1402
Configuration menu - View commit details
-
Copy full SHA for e163c4b - Browse repository at this point
Copy the full SHA e163c4bView commit details -
distro/fedora: add new image type "coreos-qcow2"
Define the new image type using the new coreosImage() function and container deployment pipeline and add it to the x86_64 and aarc64 registries for Fedora.
Configuration menu - View commit details
-
Copy full SHA for 49a0786 - Browse repository at this point
Copy the full SHA 49a0786View commit details -
cmd: use internal types for config and repositories
We always aliased these types so that internal changes wouldn't always require changing our tooling interfaces but it's actually more annoying needing to change them every time something is added or changed in the internal types. These are development and testing tools. It's fine to use the internal types directly and keep them simple.
Configuration menu - View commit details
-
Copy full SHA for 1ab6c74 - Browse repository at this point
Copy the full SHA 1ab6c74View commit details -
Configuration menu - View commit details
-
Copy full SHA for 160b82b - Browse repository at this point
Copy the full SHA 160b82bView commit details -
test: update repository format
Use gpgkeys instead of concatenating multiple keys under gpgkey. The singular gpgkey was a leftover from an old format and now we use an array from the internal rpmmd.RepoConfig instead.
Configuration menu - View commit details
-
Copy full SHA for f80416f - Browse repository at this point
Copy the full SHA f80416fView commit details -
manifest: disable root user locking when deploying containers
Modifying the root user fails when trying to modify a container deployment. Let's disable it for now until we figure out if it's possible.
Configuration menu - View commit details
-
Copy full SHA for bbf87f2 - Browse repository at this point
Copy the full SHA bbf87f2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6fc7e74 - Browse repository at this point
Copy the full SHA 6fc7e74View commit details -
Schutzfile: unpin osbuild commit sha
Use the latest version from the Fedora 38 repo snapshots.
Configuration menu - View commit details
-
Copy full SHA for 02a5d0b - Browse repository at this point
Copy the full SHA 02a5d0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d3e1734 - Browse repository at this point
Copy the full SHA d3e1734View commit details