Some target ymls are using extra_repos when they should be using target_repos.
Because these target ymls are using extra_repos
, when a user tries to build with their own repos it overwrites the extra_repos
set in the target yml. The build fails because it now cannot find the packages that the target yml needs.
The solution is for target ymls to use target_repos
and leave extra_repos
for those building who may need to include additional repos.
e.g. of error, target yml using extra_repos
:
osbuild-mpp -I . -D image_type="\"regular\"" -D arch=\"aarch64\" -D distro_name="\"rhvs9\"" -D target="\"j784s4evm\"" -D 'ssh_permit_root_login=true' -D 'ssh_permit_password_auth=true' -D 'kernel_version="5.14.0-437.389.el9iv"' -D 'extra_repos=[{"id":"local","baseurl":"file:///usr/share/nginx/html/"}]' -D 'extra_rpms=["vi"]' -D 'osname="rhivos"' -D 'uefi_vendor="redhat"' -D 'release_rpm="redhat-release"' -D 'linux_firmware_rpm="linux-firmware"' -D 'distro_baseurl="<distro>"' -D 'use_composefs_signed="false"' images/developer.mpp.yml _build/rhvs9-j784s4evm-developer-regular.aarch64.json
No match for argument: uboot-images-armv8
Traceback (most recent call last):
File "/usr/bin/osbuild-mpp", line 1851, in <module>
main()
File "/usr/bin/osbuild-mpp", line 1843, in main
m.process_format()
File "/usr/bin/osbuild-mpp", line 1368, in process_format
self._process_format(self.root)
File "/usr/bin/osbuild-mpp", line 1350, in _process_format
self._process_format(value)
File "/usr/bin/osbuild-mpp", line 1363, in _process_format
self._process_format(value)
File "/usr/bin/osbuild-mpp", line 1350, in _process_format
self._process_format(value)
File "/usr/bin/osbuild-mpp", line 1363, in _process_format
self._process_format(value)
File "/usr/bin/osbuild-mpp", line 1338, in _process_format
self._format_dict_node(node, self.format_stack)
File "/usr/bin/osbuild-mpp", line 1247, in _format_dict_node
self._process_stage(node, pipeline_name)
File "/usr/bin/osbuild-mpp", line 1393, in _process_stage
self._process_depsolve(stage, pipeline_name)
File "/usr/bin/osbuild-mpp", line 1574, in _process_depsolve
deps = self.depsolve(mpp)
File "/usr/bin/osbuild-mpp", line 1178, in depsolve
return solver.resolve(packages, excludes)
File "/usr/bin/osbuild-mpp", line 802, in resolve
base.install_specs(packages, exclude=excludes)
File "/usr/lib/python3.9/site-packages/dnf/base.py", line 2053, in install_specs
raise dnf.exceptions.MarkingErrors(no_match_group_specs=no_match_group_specs,
dnf.exceptions.MarkingErrors: Problems in request:
missing packages: uboot-images-armv8
make: *** [Makefile:149: _build/rhvs9-j784s4evm-developer-regular.aarch64.json] Error 1
with target yml using target_repos
:
osbuild-mpp -I . -D image_type="\"regular\"" -D arch=\"aarch64\" -D distro_name="\"rhvs9\"" -D target="\"j784s4evm\"" -D 'ssh_permit_root_login=true' -D 'ssh_permit_password_auth=true' -D 'kernel_version="5.14.0-437.389.el9iv"' -D 'extra_repos=[{"id":"local","baseurl":"file:///usr/share/nginx/html/"}]' -D 'extra_rpms=["vi"]' -D 'osname="rhivos"' -D 'uefi_vendor="redhat"' -D 'release_rpm="redhat-release"' -D 'linux_firmware_rpm="linux-firmware"' -D 'distro_baseurl="<distro>"' -D 'use_composefs_signed="false"' images/developer.mpp.yml _build/rhvs9-j784s4evm-developer-regular.aarch64.json
osbuild --checkpoint build --store _build/osbuild_store --output-directory _build/image_output --cache-max-size=1GB --export image _build/rhvs9-j784s4evm-developer-regular.aarch64.json
starting _build/rhvs9-j784s4evm-developer-regular.aarch64.jsonPipeline source org.osbuild.curl: 3c9374a9f0d01ca65311abd4b95dc2f1e377063f10fbafeb1c41b73d9b8b4407
Build
root: <host>
...
Pipeline source org.osbuild.inline: e52136608bc1be2213ac28c7a7c1a04d32f639a6abb923af62ab80005389fbd9
Build
root: <host>
Pipeline build: 23f1126bcc9f387b6fe3cd6e451857c4643da45663dc355aeddbe877965233dd
Build
root: <host>
runner: org.osbuild.centos9 (org.osbuild.centos9)
org.osbuild.rpm: 08571c44fae78c4d49a446e48c6076b4004447c598a1205c327773be765395f0 {
"gpgkeys": [
Edited by sbertram