Worker/koji-finalize: include osbuild version in image metadata
Include the osbuild version used to build the image, in the image extra metadata attached to the Koji build and image output. Extend `koji.sh` to verify that the version is set and of the expected value. Signed-off-by: Tomáš Hozza <thozza@redhat.com>
This commit is contained in:
parent
dcb66db5e7
commit
f6e0e99391
3 changed files with 13 additions and 0 deletions
|
|
@ -188,6 +188,7 @@ func (impl *KojiFinalizeJobImpl) Run(job worker.Job) error {
|
|||
Arch: buildResult.Arch,
|
||||
BootMode: buildResult.ImageBootMode,
|
||||
OSBuildArtifact: kojiTargetResult.OsbuildArtifact,
|
||||
OSBuildVersion: buildResult.OSBuildVersion,
|
||||
}
|
||||
|
||||
// The image filename is now set in the KojiTargetResultOptions.
|
||||
|
|
|
|||
|
|
@ -127,6 +127,8 @@ type ImageExtraInfo struct {
|
|||
BootMode string `json:"boot_mode,omitempty"`
|
||||
// Configuration used to prouce this image using osbuild
|
||||
OSBuildArtifact *target.OsbuildArtifact `json:"osbuild_artifact,omitempty"`
|
||||
// Version of the osbuild binary used by the worker to build the image
|
||||
OSBuildVersion string `json:"osbuild_version,omitempty"`
|
||||
// Results from any upload targets associated with the image
|
||||
// except for the Koji target.
|
||||
UploadTargetResults []*target.TargetResult `json:"upload_target_results,omitempty"`
|
||||
|
|
|
|||
|
|
@ -120,6 +120,9 @@ function verify_buildinfo() {
|
|||
local buildid="${1}"
|
||||
local target_cloud="${2:-none}"
|
||||
|
||||
local osbuild_version
|
||||
osbuild_version="$(osbuild --version | cut -d ' ' -f 2 -)"
|
||||
|
||||
local extra_build_metadata
|
||||
# extract the extra build metadata JSON from the output
|
||||
extra_build_metadata="$(koji -s "${KOJI_HUB_URL}" --noauth call --json getBuild "${buildid}" | jq -r '.extra')"
|
||||
|
|
@ -243,6 +246,13 @@ function verify_buildinfo() {
|
|||
exit 1
|
||||
fi
|
||||
|
||||
local image_osbuild_version
|
||||
image_osbuild_version="$(echo "${image_metadata_build}" | jq -r '.osbuild_version')"
|
||||
if [ "${image_osbuild_version}" != "${osbuild_version}" ]; then
|
||||
echo "Unexpected osbuild version for '${image_filename}'. Expected '${osbuild_version}', but got '${image_osbuild_version}'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
local image_metadata_archive
|
||||
image_metadata_archive="$(echo "${image}" | jq -r '.extra.image')"
|
||||
if [ "${image_metadata_build}" != "${image_metadata_archive}" ]; then
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue