buildinstall: Add ability to install extra packages in runroot

Resolves: https://pagure.io/pungi/issue/1461
Merges: https://pagure.io/pungi/pull-request/1580
JIRA: RHELCMP-2911
Signed-off-by: Ozan Unsal <ounsal@redhat.com>
This commit is contained in:
Ozan Unsal 2022-01-04 12:00:24 +01:00 committed by Lubomír Sedlář
parent 894cce6a5a
commit 42f668d969
3 changed files with 19 additions and 1 deletions

View File

@ -672,6 +672,11 @@ Options
**buildinstall_allow_reuse** = False **buildinstall_allow_reuse** = False
(*bool*) -- When set to ``True``, *Pungi* will try to reuse buildinstall (*bool*) -- When set to ``True``, *Pungi* will try to reuse buildinstall
results from old compose specified by ``--old-composes``. results from old compose specified by ``--old-composes``.
**buildinstall_packages**
(list) Additional packages to be installed in the runroot environment
where lorax will run to create installer. Format: ``[(variant_uid_regex,
{arch|*: [package_globs]})]``.
Example Example
------- -------
@ -706,6 +711,13 @@ Example
}) })
] ]
# Additional packages to be installed in the Koji runroot environment where
# lorax will run.
buildinstall_packages = [
('^Simple$', {
'*': ['dummy-package'],
})
]
.. note:: .. note::

View File

@ -785,6 +785,10 @@ def make_schema():
"buildinstall_kickstart": {"$ref": "#/definitions/str_or_scm_dict"}, "buildinstall_kickstart": {"$ref": "#/definitions/str_or_scm_dict"},
"buildinstall_use_guestmount": {"type": "boolean", "default": True}, "buildinstall_use_guestmount": {"type": "boolean", "default": True},
"buildinstall_skip": _variant_arch_mapping({"type": "boolean"}), "buildinstall_skip": _variant_arch_mapping({"type": "boolean"}),
"buildinstall_packages": {
"$ref": "#/definitions/package_mapping",
"default": [],
},
"global_ksurl": {"type": "url"}, "global_ksurl": {"type": "url"},
"global_version": {"type": "string"}, "global_version": {"type": "string"},
"global_target": {"type": "string"}, "global_target": {"type": "string"},

View File

@ -809,7 +809,9 @@ class BuildinstallThread(WorkerThread):
chown_paths.append(_get_log_dir(compose, variant, arch)) chown_paths.append(_get_log_dir(compose, variant, arch))
elif buildinstall_method == "buildinstall": elif buildinstall_method == "buildinstall":
packages += ["anaconda"] packages += ["anaconda"]
packages += get_arch_variant_data(
compose.conf, "buildinstall_packages", arch, variant
)
if self._reuse_old_buildinstall_result( if self._reuse_old_buildinstall_result(
compose, arch, variant, cmd, pkgset_phase compose, arch, variant, cmd, pkgset_phase
): ):