Pipeline: drop the base concept

Each pipeline is now self-contained without references to another.
However, as the final stage in a pipeline is saved to the content
store, we are able to reuse it if one pipeline is the prefix of
another, as described in the previous commit. This makes the
concept of a base redundant.

The ObjectStore must take a directory as argument, never None, so
the conditional assertion for this in Pipeline.run() is ok to
remove.

Signed-off-by: Tom Gundersen <teg@jklm.no>
This commit is contained in:
Tom Gundersen 2019-08-02 01:56:30 +02:00
parent 67da9e0cca
commit 6d7cd1b93c
5 changed files with 42 additions and 46 deletions

View file

@ -1,6 +1,43 @@
{
"name": "base-qcow2",
"base": "b317426a4dcbef722cf6cccb117deedc0e636dcc24e5d3283e7e6fc2076f1e62",
"stages": [
{
"name": "org.osbuild.dnf",
"options": {
"releasever": "30",
"repos": {
"fedora": {
"name": "Fedora",
"metalink": "https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch",
"gpgkey": "file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch"
}
},
"packages": [
"@Core",
"selinux-policy-targeted",
"grub2-pc"
]
}
},
{
"name": "org.osbuild.locale",
"options": {
"language": "en_US"
}
},
{
"name": "org.osbuild.selinux",
"options": {
"file_contexts": "etc/selinux/targeted/contexts/files/file_contexts"
}
},
{
"name": "org.osbuild.grub2",
"options": {
"root_fs_uuid": "76a22bf4-f153-4541-b6c7-0332c0dfaeac"
}
}
],
"assembler":
{
"name": "org.osbuild.qcow2",

View file

@ -1,12 +0,0 @@
{
"name": "base-with-grub2",
"base": "cf184c3183ada9edd0b7a728dedc337ac7f4b3df0393b4628a361d8d1fcfa9c0",
"stages": [
{
"name": "org.osbuild.grub2",
"options": {
"root_fs_uuid": "76a22bf4-f153-4541-b6c7-0332c0dfaeac"
}
}
]
}

View file

@ -1,12 +0,0 @@
{
"name": "base-with-locale",
"base": "ba22ac2afc2db87df992d8937ee6664f53808465821670b0d636b3ebfac4ce9c",
"stages": [
{
"name": "org.osbuild.locale",
"options": {
"language": "en_US"
}
}
]
}

View file

@ -1,12 +0,0 @@
{
"name": "base-with-selinux",
"base": "a26f5fd7cee0b606f35887e1df9c7449af13ab0f62c01b81ecd1bf9e623449ed",
"stages": [
{
"name": "org.osbuild.selinux",
"options": {
"file_contexts": "etc/selinux/targeted/contexts/files/file_contexts"
}
}
]
}