At this point, our users have to substitute the image reference in all manifest manually which is painful and has to be done on every update. And because manifest are tightly coupled to the images, the flows is like:
Get the all the manifests for the new version (dozens of yaml files)
Go through each of them to see if they use the operator image (also in env vars) or use grep and hope for the best.
Commit the manifests to git / update
This stems from an chicken-egg issue of the manifest being consumed from the same place as the source code, so when you cut the tag, it's too late to update the manifests, otherwise it's too early. Templating and publishing them somewhere, after the tag is created, sort this issue, fixes the UX and simplifies our installation guide significantly. GitHub releases are where we "publish" our "tags" so it seems like a reasonable destination.
At this point, our users have to substitute the image reference in all manifest manually which is painful and has to be done on every update. And because manifest are tightly coupled to the images, the flows is like:
This stems from an chicken-egg issue of the manifest being consumed from the same place as the source code, so when you cut the tag, it's too late to update the manifests, otherwise it's too early. Templating and publishing them somewhere, after the tag is created, sort this issue, fixes the UX and simplifies our installation guide significantly. GitHub releases are where we "publish" our "tags" so it seems like a reasonable destination.