test: add a test for the ostree.commit assembler
Create a ostree commit and check that it successfully was created by inspecting the resulting `compose.json`.
This commit is contained in:
parent
5a54dfcf9f
commit
da80259ea0
3 changed files with 1189 additions and 0 deletions
1068
test/data/manifests/fedora-ostree-commit.json
Normal file
1068
test/data/manifests/fedora-ostree-commit.json
Normal file
File diff suppressed because it is too large
Load diff
104
test/data/manifests/mpp-fedora-ostree-commit.json
Normal file
104
test/data/manifests/mpp-fedora-ostree-commit.json
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
{
|
||||
"pipeline": {
|
||||
"build": {
|
||||
"mpp-import-pipeline": {
|
||||
"path": "f32-build.json"
|
||||
},
|
||||
"runner": "org.osbuild.fedora32"
|
||||
},
|
||||
"stages": [
|
||||
{
|
||||
"name": "org.osbuild.rpm",
|
||||
"options": {
|
||||
"gpgkeys": [
|
||||
"-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBF1RVqsBEADWMBqYv/G1r4PwyiPQCfg5fXFGXV1FCZ32qMi9gLUTv1CX7rYy\nH4Inj93oic+lt1kQ0kQCkINOwQczOkm6XDkEekmMrHknJpFLwrTK4AS28bYF2RjL\nM+QJ/dGXDMPYsP0tkLvoxaHr9WTRq89A+AmONcUAQIMJg3JxXAAafBi2UszUUEPI\nU35MyufFt2ePd1k/6hVAO8S2VT72TxXSY7Ha4X2J0pGzbqQ6Dq3AVzogsnoIi09A\n7fYutYZPVVAEGRUqavl0th8LyuZShASZ38CdAHBMvWV4bVZghd/wDV5ev3LXUE0o\nitLAqNSeiDJ3grKWN6v0qdU0l3Ya60sugABd3xaE+ROe8kDCy3WmAaO51Q880ZA2\niXOTJFObqkBTP9j9+ZeQ+KNE8SBoiH1EybKtBU8HmygZvu8ZC1TKUyL5gwGUJt8v\nergy5Bw3Q7av520sNGD3cIWr4fBAVYwdBoZT8RcsnU1PP67NmOGFcwSFJ/LpiOMC\npZ1IBvjOC7KyKEZY2/63kjW73mB7OHOd18BHtGVkA3QAdVlcSule/z68VOAy6bih\nE6mdxP28D4INsts8w6yr4G+3aEIN8u0qRQq66Ri5mOXTyle+ONudtfGg3U9lgicg\nz6oVk17RT0jV9uL6K41sGZ1sH/6yTXQKagdAYr3w1ix2L46JgzC+/+6SSwARAQAB\ntDFGZWRvcmEgKDMyKSA8ZmVkb3JhLTMyLXByaW1hcnlAZmVkb3JhcHJvamVjdC5v\ncmc+iQI4BBMBAgAiBQJdUVarAhsPBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAK\nCRBsEwJtEslE0LdAD/wKdAMtfzr7O2y06/sOPnrb3D39Y2DXbB8y0iEmRdBL29Bq\n5btxwmAka7JZRJVFxPsOVqZ6KARjS0/oCBmJc0jCRANFCtM4UjVHTSsxrJfuPkel\nvrlNE9tcR6OCRpuj/PZgUa39iifF/FTUfDgh4Q91xiQoLqfBxOJzravQHoK9VzrM\nNTOu6J6l4zeGzY/ocj6DpT+5fdUO/3HgGFNiNYPC6GVzeiA3AAVR0sCyGENuqqdg\nwUxV3BIht05M5Wcdvxg1U9x5I3yjkLQw+idvX4pevTiCh9/0u+4g80cT/21Cxsdx\n7+DVHaewXbF87QQIcOAing0S5QE67r2uPVxmWy/56TKUqDoyP8SNsV62lT2jutsj\nLevNxUky011g5w3bc61UeaeKrrurFdRs+RwBVkXmtqm/i6g0ZTWZyWGO6gJd+HWA\nqY1NYiq4+cMvNLatmA2sOoCsRNmE9q6jM/ESVgaH8hSp8GcLuzt9/r4PZZGl5CvU\neldOiD221u8rzuHmLs4dsgwJJ9pgLT0cUAsOpbMPI0JpGIPQ2SG6yK7LmO6HFOxb\nAkz7IGUt0gy1MzPTyBvnB+WgD1I+IQXXsJbhP5+d+d3mOnqsd6oDM/grKBzrhoUe\noNadc9uzjqKlOrmrdIR3Bz38SSiWlde5fu6xPqJdmGZRNjXtcyJlbSPVDIloxw==\n=QWRO\n-----END PGP PUBLIC KEY BLOCK-----\n"
|
||||
],
|
||||
"mpp-depsolve": {
|
||||
"architecture": "x86_64",
|
||||
"module-platform-id": "f32",
|
||||
"baseurl": "http://mirrors.kernel.org/fedora/releases/32/Everything/x86_64/os",
|
||||
"repos": [
|
||||
{
|
||||
"id": "default",
|
||||
"metalink": "https://mirrors.fedoraproject.org/metalink?repo=fedora-32&arch=$basearch"
|
||||
}
|
||||
],
|
||||
"packages": [
|
||||
"@cloud-server-environment",
|
||||
"chrony",
|
||||
"dracut-config-generic",
|
||||
"grub2-pc",
|
||||
"kernel-core",
|
||||
"langpacks-en",
|
||||
"nss-altfiles",
|
||||
"ostree",
|
||||
"polkit",
|
||||
"rpm-ostree",
|
||||
"selinux-policy-targeted",
|
||||
"systemd-udev"
|
||||
],
|
||||
"excludes": [
|
||||
"dracut-config-rescue"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "org.osbuild.locale",
|
||||
"options": {
|
||||
"language": "en_US"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "org.osbuild.fstab",
|
||||
"options": {
|
||||
"filesystems": [
|
||||
{
|
||||
"label": "boot",
|
||||
"vfs_type": "ext4",
|
||||
"path": "/boot",
|
||||
"freq": 1,
|
||||
"passno": 1
|
||||
},
|
||||
{
|
||||
"label": "root",
|
||||
"vfs_type": "ext4",
|
||||
"path": "/",
|
||||
"freq": 1,
|
||||
"passno": 1
|
||||
},
|
||||
{
|
||||
"label": "EFI-SYSTEM",
|
||||
"vfs_type": "vfat",
|
||||
"path": "/boot/efi",
|
||||
"options": "umask=0077,shortname=winnt",
|
||||
"freq": 0,
|
||||
"passno": 2
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "org.osbuild.selinux",
|
||||
"options": {
|
||||
"file_contexts": "etc/selinux/targeted/contexts/files/file_contexts"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "org.osbuild.rpm-ostree",
|
||||
"options": {
|
||||
"etc_group_members": [
|
||||
"wheel",
|
||||
"docker"
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"assembler": {
|
||||
"name": "org.osbuild.ostree.commit",
|
||||
"options": {
|
||||
"ref": "fedora/x86_64/osbuild"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -99,6 +99,23 @@ class TestAssemblers(test.TestBase):
|
|||
self.assertImageFile(image, "raw", options["size"])
|
||||
self.assertFilesystem(image, options["root_fs_uuid"], "ext4", tree)
|
||||
|
||||
@unittest.skipUnless(test.TestBase.have_tree_diff(), "tree-diff missing")
|
||||
def test_ostree(self):
|
||||
with self.osbuild as osb:
|
||||
with open(os.path.join(self.locate_test_data(),
|
||||
"manifests/fedora-ostree-commit.json")) as f:
|
||||
manifest = json.load(f)
|
||||
|
||||
data = json.dumps(manifest)
|
||||
osb.compile(data)
|
||||
with osb.map_output("compose.json") as filename:
|
||||
with open(filename) as f:
|
||||
compose = json.load(f)
|
||||
commit_id = compose["ostree-commit"]
|
||||
ref = compose["ref"]
|
||||
assert commit_id
|
||||
assert ref
|
||||
|
||||
@unittest.skipUnless(test.TestBase.have_tree_diff(), "tree-diff missing")
|
||||
def test_qemu(self):
|
||||
loctl = loop.LoopControl()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue