No description
Find a file
Christian Kellner 83caf800e5 spec: only disable the dep. generator for runners
We do want to turn the dependency generator off for runners,
because they are tied to the specific platform, which might, if
not disabled, introduce dependencies for that platform to the
general package. An prominent example is platform-python used
by the RHEL runner.
On the other hand, we do want to pick up the dependency for the
stages and assemblers, i.e. /usr/bin/python3, because they need
to be able to run on the host, since the host provides the root
file-system for the initial build container, the build host.
Add an additional comment to the shebang mangling exception to
explain that due to the combination of dependency generator and
the disabling of shebang mangler for assembler and stages an
additionally dependency on /usr/bin/python3 will be added on RHEL,
and that this is what we indeed want.
2020-11-23 15:30:33 +01:00
.github/workflows ci: check spelling via codespell 2020-10-06 14:41:00 +02:00
assemblers assemblers/tar: use osbuild.api.arguments 2020-08-31 15:06:36 +02:00
docs cli: drop --build-env argument 2020-05-07 19:52:33 +02:00
osbuild util/jsoncomm: chain the BufferError in recv 2020-10-30 17:28:31 +01:00
runners runner: use osbuild.api.exception_handler 2020-10-09 10:47:44 +02:00
samples stages/noop: fix the schema to allow any props 2020-07-16 19:02:25 +02:00
schemas schema/osbuild1.json: convert to draft4 standard 2020-05-12 22:00:38 +02:00
schutzbot schutzbot: pin osbuild-composer 2020-11-15 13:53:45 +00:00
selinux selinux: allow nnp and nosuid transitions 2020-08-10 14:05:24 +02:00
sources osbuild: fix spelling mistakes found by codespell 2020-10-06 14:41:00 +02:00
stages stages/rpm: document returned metadata 2020-10-22 22:47:22 +01:00
test test: add test for osbuild executable 2020-10-27 22:04:09 +01:00
tools tools/mpp-depsolve: make use of dnf's per-user cache 2020-10-19 17:37:46 +01: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
.pylintrc pylint: increase max attributes to 10 2020-07-21 13:25: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 master → main 2020-11-14 12:03:31 +00:00
NEWS.md NEWS.md: update for osbuild version 23 2020-10-23 16:29:50 +02:00
osbuild.spec spec: only disable the dep. generator for runners 2020-11-23 15:30:33 +01:00
README.md buildroot: use bwrap to contain stages 2020-07-21 14:20:32 +02:00
requirements.txt osbuild: add meta module for metadata information 2020-05-06 15:42:23 +02:00
setup.py 23 2020-10-23 16:29:50 +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

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.