diff --git a/src/cmd-build b/src/cmd-build index 85e9f5b1ee..7b11ec50dd 100755 --- a/src/cmd-build +++ b/src/cmd-build @@ -407,6 +407,7 @@ else ostree_tarfile_path="${name}-${buildid}-ostree.${basearch}.ociarchive" gitsrc=$(jq -r .git.origin < "${PWD}/coreos-assembler-config-git.json") cmd=(ostree container encapsulate --copymeta="rpmostree.inputhash") + openshift_cvo_labels=$(jq -r '.["ostree-container-inject-openshift-cvo-labels"]' < "${image_json}") # The ostree-ext default is 64, but this is still too much apparently # for (older?) versions of podman AKA containers/storage (or maybe) @@ -419,11 +420,18 @@ else ;; *) fatal "Unknown ostree-format: ${ostree_format}" esac + labels=() + if test "${openshift_cvo_labels}" = "true"; then + labels+=("--label=io.openshift.build.version-display-names=machine-os=${summary}" \ + "--label=io.openshift.build.versions=machine-os=${buildid}" + ) + fi runv "${cmd[@]}" --repo="${tmprepo}" \ --label="coreos-assembler.image-config-checksum=${image_config_checksum}" \ --label="coreos-assembler.image-input-checksum=${image_input_checksum}" \ --label="org.opencontainers.image.source=${gitsrc}" \ --label="org.opencontainers.image.revision=${config_gitrev}" \ + "${labels[@]}" \ "${buildid}" \ oci-archive:"${ostree_tarfile_path}".tmp:latest /usr/lib/coreos-assembler/finalize-artifact "${ostree_tarfile_path}"{.tmp,} diff --git a/src/image-default.yaml b/src/image-default.yaml index 977d1f5cc8..ae12c21a75 100644 --- a/src/image-default.yaml +++ b/src/image-default.yaml @@ -10,6 +10,8 @@ extra-kargs: [] # Can also be oci-chunked ostree-format: oci-chunked-v1 +# Inject io.openshift.build.version-display-names for OpenShift CVO +ostree-container-inject-openshift-cvo-labels: false # True if we should use `ostree container image deploy` deploy-via-container: false