No description
Find a file
Tom Gundersen 320c08b76c tests/dnf: use baseurl over metalink
Using a metalink resolves to a specific mirror at runtime, and
downloads each rpm from that repository.

We want to move to using the org.osbuild.files source, which means
that we must save the url to each rpm in the source definition, which
will be determined by which mirror is used to generate the config.

If we use metalinks to generate the source configuration, the mirror
used will be arbitrary. Instead, we want to pick the best mirror
explicitly, ideally in a way that is independent of the location
depsolving happens in (which will be different from the location
the rpms are downloaded to).

We can choose explicitly by passing baseurl rather than metalink
to dnf, so move in that direction now by replacing all metalinks
by baseurls in our dnf configuration.

Signed-off-by: Tom Gundersen <teg@jklm.no>
2020-03-03 00:05:26 +01:00
.github/workflows tests: copy on write checks for objectstore.Object 2020-02-28 16:11:49 +01:00
assemblers assembler/qemu: schema: 'dos' option for 'pttype' 2020-01-29 18:03:24 +01:00
docs docs: add man-page osbuild(1) 2020-03-02 21:34:09 +01:00
osbuild osbuild: make parameter identifiers more descriptive 2020-03-02 21:33:52 +01:00
runners runners: add runner for Arch Linux 2020-02-29 18:34:00 +01:00
samples tests/dnf: always specify platform_module_id 2020-03-03 00:05:26 +01:00
sources fixup: files 2020-02-06 19:01:12 +01:00
stages dnf: enable fastestmirror by default 2020-02-22 02:01:17 +01:00
test tests/dnf: use baseurl over metalink 2020-03-03 00:05:26 +01:00
.editorconfig editorconfig: add one matching current style 2019-12-13 18:15:08 +01:00
.gitignore pipeline: detect host instead of using org.osbuild.host 2020-02-28 16:06:30 +01:00
.packit.yaml Update packit.yaml for f31 2019-10-15 14:04:57 +02:00
.pylintrc pylint: disable too-many-arguments rule 2019-07-24 12:55:48 +02:00
.travis.yml Remove unit tests from Travis CI job 2020-02-25 20:16:49 +01:00
bump-version.sh release version 2 2019-09-18 00:05:43 +02:00
LICENSE Revert "Fill in the license template" 2019-11-18 12:23:10 +01:00
Makefile spec: use forgemeta 2020-02-24 12:17:54 +01:00
MANIFEST.in introduce spec file and related build scripts 2019-07-23 15:22:40 +02:00
osbuild.spec pipeline: detect host instead of using org.osbuild.host 2020-02-28 16:06:30 +01:00
README.md docs: refactor README 2020-03-02 21:34:09 +01:00
RELEASE.md sum up the procedure necessary for releasing new version 2019-10-04 22:27:06 +02:00
setup.py Bump setup.py to version 8 2020-02-24 20:02:30 +01:00
tree-diff tools/tree-diff: strip NULL character from selinux xattr 2019-10-08 21:39:35 +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:

  • python >= 3.7
  • systemd-nspawn >= 244

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.