Make sure to pass `--distro` so the `minimal-raw-xz` image type exists,
not all distributions have it and since we're available on multiple it's
better to be explicit.
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
With the new images library changes to move the pipeline
roles out of the image types into the manifest we need
to tweak osbuild-composer to use the new way of getting
the payload and build pipelines.
This commit implements that new method based on the
manifest instead of the image type. See images pr#1766
for the rational of the change.
This commit fixes the issue that --extra-repo are not added
correctly to the repo registry when doing cross arch building.
The issue is that they get added early at the reporegistry
level and because we don't know yet what arch will be used
it was initially only added to the host arch. This was
fine before we supported cross-arch building.
But now that we do support cross-arch building this is
of course an issue and produces subtle bugs. This commit
is the "easy" fix, the extra repos are just added to for
all architectures. This may not be right but because they
are optional its the reponsibility of the user to provide
the right ones. Eventually we should probably be smarter
here and move extra repo support into manifestgen but
that requires changes in images and an images release so
this is good enough for now.
Thanks to Simon de Vlieger for reporting this.
Drop using the "images" library blueprint types and use the ones
from github.com/osbuild/blueprint/pkg/blueprint instead.
This also moves to the images library to v0.172.0 and the blueprints
library to v1.12.0 as this is required for this to work.
A replacement directive was still present in the `go.mod`, leading to
not installing 0.168 but a variation on 0.167.
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
With `image-builder` having been released into CentOS/RHEL we should no
longer ship updates for EPEL.
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
Upgrades the configuration file from V1 to V2 format which was pretty
straightforward. The vendor/ directory no longer needs to be excluded as
it is a default now in 2.x.
Updates the pre-commit configuration to the latest and greatest version.
In [1] I changed the name of the variable used to deduce the version
built. I forgot to update this in the specfile. Let's correct that.
[1]: https://github.com/osbuild/image-builder-cli/pull/230
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
We have an issue where `%post` scripts are not being executed due to our
incorrect handling of Anaconda modules [1].
[1]: https://github.com/osbuild/bootc-image-builder/issues/968
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
The current MockCmd.Calls() is a bit ambiguous so follow the example
of pytest here and rename to the cleaner CallArgsList() that
captures more closely what the helper is actually doing.
While looking over the code I noticed that the `Restore()` helper
is not needed (and arguably wrong as it does not reset PATH).
We already use `t.TempDir()` and `t.Setenv()` as part of the
command setup so manually cleanup is not neccessary (and is today
even incomplete). So YAGNI and we can remove Restore().
Include the commit of the build (if available in the build environment),
also include the version of `images` in the build; if available.
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
Make sure that images built by ibcli have correct rhsm.Facts set for
distributions that set it (this is handled by the distro definition, not
by the caller of the manifest generator).
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
People often forget to mount, we're a bit clearer about this in
`bootc-image-builder`; let's make it clear here as well.
Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
The '*-simplified-installer' images require the installation device
to be specified as a BP customization to serialize their Manifest.
The 'describe' command was not setting those, which resulted in errors
when describing such image types.
Set a dummy installation device BP customization for image types with
their name ending with '-simplified-installer', to enable describing
of such images.
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
OSTree images require additional arguments to serialize their Manifest.
The 'describe' command was not setting those, which resulted in errors
when describing such image types.
Set the required minimum OSTree arguments to dummy values to enable
describing of such images.
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
Add an unit test to verify that the `describe` command can describe all
image types. I've recently ran into issue when describing ostree-based
and `*-simplified-installer` image types.
Add new dependecy for working with YAML - sigs.k8s.io/yaml.
This is what we will probably converge to, since our currently used YAML
library is unmaintained.
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
Add the common-stale-action for marking issues and PRs as stale. This is
consistent with all osbuild group projects.
Signed-off-by: Tomáš Hozza <thozza@redhat.com>