When pulling from intermediate registries we check zuul for artifacts of a certain type. Unfortunately we do so blindly without checking that the metadata field exists for the artifact. These leads to errors like: "msg": "The conditional check 'item.metadata.type | default('') == 'container_image'' failed. The error was: error while evaluating conditional (item.metadata.type | default('') == 'container_image'): 'dict object' has no attribute 'metadata' http://logs.openstack.org/12/643712/1/gate/opendev-buildset-registry/1016e6e/job-output.txt.gz#_2019-03-18_19_28_39_060210 Address this by checking the metadata field prior to accessing it. Change-Id: I02bbeddccdda836fc313eccce09e4cb0beb6262a
Pull artifacts from the intermediate registry
This role will pull any artifacts built for changes ahead of this change which have been placed in an intermediate registry into the buildset registry for this buildset.
Run this in a trusted pre-playbook at the start of a job (which, in the case of multiple dependent jobs in a buildset, should be at the root of the job dependency graph).
This requires the :zuulrun-buildset-registry
role already applied. It also
requires an externally managed "intermediate" registry operating for the
use of Zuul, and it requires "skopeo" to be installed on the Zuul
executors.
Role Variables
Information about the registry, as returned by :zuul
run-buildset-registry
.The host (IP address) of the registry.
The port on which the registry is listening.
The username used to access the registry via HTTP basic auth.
The password used to access the registry via HTTP basic auth.
The (self-signed) certificate used by the registry.
Information about the registry. This is expected to be provided as a secret.
The host (IP address) of the registry.
The port on which the registry is listening.
The username used to access the registry via HTTP basic auth.
The password used to access the registry via HTTP basic auth.