No description
Find a file
Jacob Kozol e30f40873d store: add image size to compose
When a use defines the image size for a compose this size is stored in
the compose struct so that the virtual image size can be returned by the
api instead of the file size of the image.
2020-02-07 14:49:15 +01:00
cmd worker: normalize Job.Run() return types 2020-02-05 01:35:50 +01:00
distribution service: adjust the IO and CPU scheduling classes 2019-12-13 20:13:15 +01:00
docs README: Define terminology as a base for internal refactoring 2020-01-30 14:42:25 +01:00
internal store: add image size to compose 2020-02-07 14:49:15 +01:00
osbuild@e0bb65dd71 submodule: bump to current osbuild master 2019-12-15 20:57:40 +01:00
repositories repositories: install the base repositories in the filesystem 2020-01-03 22:35:52 +01:00
test distro: add custom image size 2020-01-23 00:57:31 +01:00
tools image-info: mount ESP at /boot/efi if found 2019-12-09 18:08:52 +01:00
.gitignore add makefile targets for rpm build 2019-12-02 13:45:07 +01:00
.gitmodules image-info: add test 2019-10-05 14:47:35 +02:00
.packit.yaml add packit 2019-11-29 12:16:27 +01:00
.travis.yml travis: disable PPC tests 2019-12-11 15:23:24 +01:00
dnf-json weldr: ensure a fresh dnf cache when making a new compose 2019-12-19 21:46:02 +01:00
go.mod weldr: add support for toml blueprints 2019-12-03 01:27:00 +01:00
go.sum weldr: add support for toml blueprints 2019-12-03 01:27:00 +01:00
golang-github-osbuild-composer.spec tests: add basic integration tests 2020-01-03 22:35:52 +01:00
LICENSE Revert "Fill in the license template" 2019-11-15 15:26:51 +01:00
Makefile repositories: install the base repositories in the filesystem 2020-01-03 22:35:52 +01:00
README.md README: Define terminology as a base for internal refactoring 2020-01-30 14:42:25 +01:00

osbuild-composer

An HTTP service for building bootable OS images. It provides the same API as lorax-composer but in the background it uses osbuild to create the images.

You can control it in Cockpit or using the composer-cli. To get started on Fedora, run:

# dnf install cockpit-composer golang-github-osbuild-composer composer-cli
# systemctl enable --now cockpit.socket
# systemctl enable --now osbuild-composer.socket

Now you can access the service using composer-cli, for example:

composer-cli status show

or using a browser: http://localhost:9090

API documentation

Please refer to the lorax-composer's documenation as osbuild-composer is a drop-in replacement.

High-level overview

overview

Frontends

osbuild-composer is meant to be used with 2 different front-ends. The primary one, which is meant for general use, is cockpit-composer. It is part of the Cockpit project and unless you have a strong reason not to use it, you should use it. composer-cli is a command line tool that can be used with osbuild-composer.

Compose

  • Compose is what the user submits over one of the frontends
  • It contains of one or more image builds
  • It contains zero or more upload actions

Image build

Job

  • What composer submits to a worker
  • Is a unit of work performed by osbuild (internally it is a single execution of osbuild)
  • Consists of one image build and zero or more Upload actions

Image type

  • In the cockpit-composer, for examples these are image types:
    • Openstack
    • Azure
    • AWS
  • As of now, we name them internally by their file format: vhd, ami, etc.
  • You can see a list of types by executing: composer-cli compose types

Upload action

  • Each image can be, but does not have to be, uploaded to a remote location
  • One image can be uploaded to multiple locations