This repository is, primarily, a Go library for generating osbuild manifests
(more details here).
It also has some libraries for uploading artifacts to cloud platforms and Koji.
The binaries implemented in cmd/
are for development and testing purposes and not part of the library.
- Website: https://www.osbuild.org
- Bug Tracker: https://github.com/osbuild/images/issues
- Discussions: https://github.com/orgs/osbuild/discussions
- Matrix (chat): Image Builder channel on Fedora Chat
- Changelog: https://github.com/osbuild/images/releases
- The image definitions API is internal and can therefore be broken. The blueprint API is the stable API.
- Nonsensical manifests should not compile (at the Golang level).
- OSBuild units (stages, sources, inputs, mounts, devices) should be directly mapped into Go objects.
- Image definitions don’t test distributions that are end-of-life. Respective code-paths should be dropped.
- Image definitions need to support the oldest supported target distribution.
Please refer to the developer guide to learn about our workflow, code style and more.
See also the local developer documentation for useful information about working with this specific project.
The build-requirements of the Go library for Fedora and rpm-based distributions are:
go
gpgme-devel
(see also Containerfile
)
Other dependencies only needed in some cases are:
btrfs-progs-devel
,device-mapper-devel
build dependencies for the unit tests and projects that importpkg/container
, which even in that case can be skipped using exclude_graphdriver_btrfs and exclude_graphdriver_devicemapper (see bootc-image-builder).krb5-devel
build dependency for the unit tests and projects that importpkg/upload/koji
osbuild-depsolve-dnf
runtime dependency for the unit tests and projects that importpkg/dnfjson
. or to runcmd/gen-manifests
andcmd/build
osbuild
(and subpackages)
runtime dependencies forcmd/build
.
- web: https://github.com/osbuild/images
- https:
https://github.com/osbuild/images.git
- ssh:
[email protected]:osbuild/images.git
Each pull request against images
starts a series of automated
tests. Tests run via GitHub Actions and GitLab CI. Each push to the pull request
will launch theses tests automatically.
- Apache-2.0
- See LICENSE file for details.