operator-registry icon indicating copy to clipboard operation
operator-registry copied to clipboard

(bug) render-veneer semver relies on Candidate channel bundle list to be complete

Open grokspawn opened this issue 3 years ago • 0 comments

opm alpha render-veneer semver command renders all referenced bundle images in the veneer before constructing channels/edges between the elements, but relies on Candidates channel being complete:

for _, b := range sv.Candidate.Bundles {
        r := action.Render{
		AllowedRefMask: action.RefBundleImage,
		Refs:           []string{b.Image},
		Registry:       v.Reg,
	}
	c, err := r.Run(ctx)
	if err != nil {
		return nil, err
	}
	cfgs = append(cfgs, *c)
}
out = *combineConfigs(cfgs)

If Candidates isn't complete, then the resulting channel generation will fail, e.g.:

2022/08/03 13:53:09 semver "/tmp/wip.yaml": semver-render: unable to post-process bundle info: supplied bundle image name "quay.io/XXXX/olm:testoperator.v0.2.1" not found in rendered bundle images

Need to accumulate the list of all bundles and pre-render them for channel/edge processing.

grokspawn avatar Aug 03 '22 19:08 grokspawn