No description
Find a file
Tomas Hozza 751fd5cd28 stages/dracut.conf: add new stage for creating dracut config files
Add new `org.osbuild.dracut.conf` stage. The option
'configuration_files' allows to create dracut configuration files under
`/usr/lib/dracut/dracut.conf.d` and thus make the
configuration persistent. The stage supports only a subset of all
configuration options allowed in dracut configuration. The intention is
to provide almost functional parity with the options supported by
`org.osbuild.dracut` stage.

The schema mandates that at least one configuration file must be defined
in the stage options. In addition, each configuration file must contain
at least one configuration option.

Add test for the new stage.

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-06-24 12:43:00 +02:00
.devcontainer devcontainer: specify the workdir 2021-04-08 12:56:06 +02:00
.github ci: update images to F33 2021-03-17 14:31:26 +00:00
assemblers assemblers/ostree: fix copying of var 2021-06-22 10:07:07 +02:00
devices devices: add support for loopback devices 2021-06-09 18:37:47 +01:00
docs Docs: Document --inspect option in the man page 2021-01-17 13:07:14 +01:00
inputs inputs/files: support for pipeline origins 2021-06-09 18:37:47 +01:00
mounts mounts/btrfs: mount support for btrfs 2021-06-09 18:37:47 +01:00
osbuild objectstore: eagerly unmount bind-mounts 2021-06-23 21:01:05 +01:00
runners aarch64: use single qemu-img thread 2021-06-09 11:57:26 +02:00
samples stages/noop: fix the schema to allow any props 2020-07-16 19:02:25 +02:00
schemas osbuild: introduce mount host service 2021-06-09 18:37:47 +01:00
schutzbot mockbuild: use s3cmd put instead of sync to speed up the RPM upload 2021-06-10 09:35:04 +01:00
selinux selinux: allow nnp and nosuid transitions 2020-08-10 14:05:24 +02:00
sources sources/curl: Implement new way of getting RHSM secrets 2021-06-04 18:23:05 +01:00
stages stages/dracut.conf: add new stage for creating dracut config files 2021-06-24 12:43:00 +02:00
test stages/dracut.conf: add new stage for creating dracut config files 2021-06-24 12:43:00 +02:00
tools tools/mpp: sort urls for v2 manifests 2021-06-22 21:10:49 +02:00
.editorconfig editorconfig: include markdown specifications 2020-10-23 16:29:50 +02:00
.gitignore test: add coverity targets to the Makefile 2020-06-24 10:01:24 +02:00
.packit.yaml packit: use custom command to get the current version 2021-06-22 18:28:04 +02:00
.travis.yml ci: move test_boot to github-actions 2020-05-13 22:00:27 +02:00
LICENSE Revert "Fill in the license template" 2019-11-18 12:23:10 +01:00
Makefile test: update test manifests to use Fedora 34 2021-06-07 12:15:26 +02:00
NEWS.md NEWS: update for osbuild release 29 2021-06-16 21:43:58 +02:00
osbuild.spec spec: install devices and mounts 2021-06-17 13:26:07 +01:00
README.md readme: add IRC 2021-06-04 15:10:12 +02:00
requirements.txt Makefile: use pytest for nicer output 2020-12-04 18:24:48 +01:00
setup.cfg setup.cfg: set max line length in pycodestyle 2021-05-12 14:26:16 +02:00
setup.py 29 2021-06-16 21:43:58 +02:00

OSBuild

Build-Pipelines for Operating System Artifacts

OSBuild is a pipeline-based build system for operating system artifacts. It defines a universal pipeline description and a build system to execute them, producing artifacts like operating system images, working towards an image build pipeline that is more comprehensible, reproducible, and extendable.

See the osbuild(1) man-page for details on how to run osbuild, the definition of the pipeline description, and more.

Project

Requirements

The requirements for this project are:

  • bubblewrap >= 0.4.0
  • python >= 3.7

Additionally, the built-in stages require:

  • bash >= 5.0
  • coreutils >= 8.31
  • curl >= 7.68
  • qemu-img >= 4.2.0
  • rpm >= 4.15
  • tar >= 1.32
  • util-linux >= 235

At build-time, the following software is required:

  • python-docutils >= 0.13
  • pkg-config >= 0.29

Testing requires additional software:

  • pytest

Build

The standard python package system is used. Consult upstream documentation for detailed help. In most situations the following commands are sufficient to build and install from source:

python setup.py build
python setup.py install --skip-build --root=/

The man-pages require python-docutils and can be built via:

rst2man docs/<input-file>.rst <output-file>

Repository:

License:

  • Apache-2.0
  • See LICENSE file for details.