No description
Find a file
Christian Kellner f7bcec60f4 objectstore: make objects identifyable
This adds a new `id` property to the ObjectStore.Object, that is
meant to reflect the identifer of the Stage to build the contents
of it. This will help to transparently access objects that have
been built but not committed to the store.
Setting the `base_id` of an object will also set its `id`. When
the object is then modified via write() the `id` will be set to
None, since no the content and the id are out of sync. In the
same way, restting an object will reset its `id` to None.
2021-01-15 13:20:31 +01:00
.github ci: send coverage data to codecov 2020-12-10 16:14:37 +01:00
assemblers assemblers/tar: use osbuild.api.arguments 2020-08-31 15:06:36 +02:00
docs docs: include note about skipping the build 2020-12-15 13:12:01 +01:00
osbuild objectstore: make objects identifyable 2021-01-15 13:20:31 +01:00
runners runners: add CentOS 8 runner 2020-12-09 11:50:48 +01: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 pipeline: run method takes store object not dir 2021-01-15 13:20:31 +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 Makefile: use pytest for nicer output 2020-12-04 18:24:48 +01: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 Makefile: use pytest for nicer output 2020-12-04 18:24:48 +01:00
requirements.txt Makefile: use pytest for nicer output 2020-12-04 18:24:48 +01: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

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.