Skip to content

fix(olm): correct CSV image refs so OperatorHub submission passes - #54

Merged
stubbi merged 1 commit into
mainfrom
fix/olm-bundle-image-refs
Jun 3, 2026
Merged

fix(olm): correct CSV image refs so OperatorHub submission passes#54
stubbi merged 1 commit into
mainfrom
fix/olm-bundle-image-refs

Conversation

@stubbi

@stubbi stubbi commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

Problem

Every hermes-operator OperatorHub submission (PRs #8212/#8243/#8272 in k8s-operatorhub/community-operators) fails the kiwi / Full operator test with:

Error: short-name resolution enforced but cannot prompt without a TTY
msg: Unable to pull 0.1.10, please check permissions or path.

The kiwi test pulls the image from the CSV containerImage annotation, which was the bare string 0.1.10 instead of ghcr.io/paperclipinc/hermes-operator:v0.1.10. metadata.name was likewise the bare 0.1.10 (flagged by the validator as not following <operator>.v<semver>).

Root cause

release-please-config.json extra-files wrote the raw version into $.metadata.name and $.metadata.annotations.containerImage on every release, clobbering them to a bare version. (paperclip-operator works precisely because it lacks these entries.)

Fix

  • Remove those two extra-files entries (keep $.spec.version, which is correctly a bare semver).
  • Set the source CSV to valid values; the submission workflow's existing sed rewrites both to the release tag, so kiwi can pull the operator image.
  • Add spec.icon (clears the no-icon validator warning).
  • Pin the hermes-agent relatedImage to v2026.5.29.2 instead of latest.

operator-sdk bundle validate ./bundle --select-optional suite=operatorframework now passes (only the informational cronjobs deprecated-api heuristic remains; minKubeVersion is 1.28).

Once merged and a release is cut, a fresh submission should pass kiwi. I'll close the stale community-operators PRs in favor of the clean one.

The OperatorHub "Full operator test" (kiwi) failed on every hermes-operator
submission with "Unable to pull 0.1.10": the CSV's containerImage annotation and
metadata.name were bare version strings, not a registry path / OLM name. Root
cause: release-please extra-files wrote the raw version into
$.metadata.annotations.containerImage and $.metadata.name on each release,
clobbering them.

- Drop those two extra-files entries (keep $.spec.version, which is bare semver).
- Set the source CSV to proper values: metadata.name hermes-operator.v0.1.10 and
  containerImage ghcr.io/paperclipinc/hermes-operator:v0.1.10. The submission
  workflow's existing sed already rewrites both to the release tag, so kiwi can
  pull the operator image.
- Add spec.icon (clears the no-icon validator warning).
- Pin the hermes-agent relatedImage to v2026.5.29.2 instead of latest.

operator-sdk bundle validate now passes (only the informational cronjobs
deprecated-api heuristic remains; minKubeVersion is 1.28).

Refs #42 paperclipinc/hermes-operator OperatorHub submissions

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@stubbi
stubbi enabled auto-merge (squash) June 3, 2026 17:38
@stubbi
stubbi merged commit edaa87d into main Jun 3, 2026
11 checks passed
@stubbi
stubbi deleted the fix/olm-bundle-image-refs branch June 3, 2026 17:41
stubbi pushed a commit that referenced this pull request Jun 3, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.1.11](v0.1.10...v0.1.11)
(2026-06-03)


### Bug Fixes

* **olm:** correct CSV image refs so OperatorHub submission passes
([#54](#54))
([edaa87d](edaa87d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: paperclip-release-bot[bot] <288053502+paperclip-release-bot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant