The two images below needed for Kyverno fail to come up for Big Bang 2.12.0 running in an airgapped configuration using the packages-image.yaml release artifact. However, they are included in the images.txt for this release.
These images are provided in the bundle of BigBang as a whole. If needed specifically for kyverno we can facilitate this request but that is the reason these "helper" you could call them, images aren't included with every package by default.
So after digging into this a bit, it seems as though while we validate that all images (minus any k3d dependency images) pulled from the k3d cluster hosting the package deployment are present in Chart.yaml's helm.sh/images annotation, we do not perform the inverse check to ensure that all images defined in Chart.yaml are found in the package-images.txt. This leaves the door open for images that are used in non-standard deployments of a package to be left out of package-images.txt.
This be desirable in some cases, such as for images that are only used by BigBang tests/ resources, which would probably not be interesting to end users, but in this case we also missed the "helper" kubectl image, which could be used depending on package configuration.
Legend for roles of the various files involved with this:
dependencies.txt - a list of images collected from k3d's container runtime before the package is deployed
full-list.txt - a list of images collected from k3d's container runtime after the package is deployed
Chart.yaml's helm.sh/images annotation - a list of all images that could possibly be used across deployment scenarios, which is forcefully kept up-to-date by comparing package-images.txt to helm.sh/images
To resolve this we could, after performing the validation of the content of helm.sh/images, add any images not already in package-images.txt from helm.sh/images to package-images.txt. Thoughts @ryan.j.garcia@chris.oconnell@michaelmartin?
I think that would be best. If these are required for a specific package but not grabbed via CI or listed in the helm.sh/images we can place them in tests/images.txt and CI will bundle them.
kubectl and ubi8-minimal are both in helm.sh/images, so we should be good without a tests/images.txt in the Kyverno case if we start adding anything missing from helm.sh/images to package-images.txt. I'll make an MR to the pipeline to get that going.