From 7bdd51cd232e39eb370f85c98715587dfec048e6 Mon Sep 17 00:00:00 2001 From: Martin Sehnoutka Date: Thu, 16 Jan 2020 09:53:03 +0100 Subject: [PATCH] README: Define terminology as a base for internal refactoring --- README.md | 33 +++ docs/osbuild-composer.svg | 584 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 617 insertions(+) create mode 100644 docs/osbuild-composer.svg diff --git a/README.md b/README.md index 53f457c3a..b8cad3bb9 100644 --- a/README.md +++ b/README.md @@ -22,3 +22,36 @@ or using a browser: `http://localhost:9090` Please refer to the [lorax-composer](https://github.com/weldr/lorax)'s documenation as osbuild-composer is a drop-in replacement. +## High-level overview + +![overview](docs/osbuild-composer.svg) + +### 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 +* The resulting *image* has a *type*: https://github.com/osbuild/osbuild-composer/blob/master/internal/distro/fedora30/distro.go#L19 +* Running build in osbuild-composer is referred to as a "job" (internal terminology, not related to end-user experience) + +### 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 diff --git a/docs/osbuild-composer.svg b/docs/osbuild-composer.svg new file mode 100644 index 000000000..17e5e280c --- /dev/null +++ b/docs/osbuild-composer.svg @@ -0,0 +1,584 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + osbuild-composer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + UDS + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TCP + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TCP + + + + + + + composer-cli + + + + + + + cockpit + + + + + + + RCM client + + + + + + + + + + + + + + + + + + + + + + + + + + + + worker + + + + + + + worker + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Pool of workers + + + + + + + osbuild + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Upload targets(filesystem, AWS, etc.) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file