Skip to content

feat(5): derive image from required imageTag and add SVO overrides#6

Merged
alanbchristie merged 1 commit into
mainfrom
squonk2-data-manager-viz-operator_abc-5-im-data-manager-image-tag
Jun 8, 2026
Merged

feat(5): derive image from required imageTag and add SVO overrides#6
alanbchristie merged 1 commit into
mainfrom
squonk2-data-manager-viz-operator_abc-5-im-data-manager-image-tag

Conversation

@alanbchristie

Copy link
Copy Markdown
Collaborator

Fixes #5

The Data Manager now provides only an image tag
(spec.imDataManager.imageTag, e.g. 0.1.4) rather than a full image. The
operator keeps the image repository as configuration and combines it with the
tag at create time.

Changes

  • imageTag is now required. A missing/empty tag raises
    kopf.PermanentError (an unrecoverable error), so the operator does not
    retry. The combination logic lives in a new pure build_image() function.
  • _DEFAULT_IMAGE is now the repository (no tag),
    ghcr.io/informaticsmatters/squonk2-viz-app, and can be overridden by the
    SVO_IMAGE environment variable.
  • _DEFAULT_INGRESS_CLASS can be overridden by the new SVO_INGRESS_CLASS
    environment variable.
  • _DEFAULT_INGRESS_PROXY_BODY_SIZE reduced from 500m to 1m.
  • README updated (image section, recognised CR properties, SVO_ config table).

Testing

TDD: tests added first in tests/test_handlers.py for build_image (including
the PermanentError on a missing tag), the SVO_IMAGE / SVO_INGRESS_CLASS
overrides, and the new 1m proxy-body-size default. All 31 tests pass and
pre-commit run (black, mypy, pylint) is clean.

🤖 Generated with Claude Code

The Data Manager now provides only an image tag (`spec.imDataManager.imageTag`)
rather than a full image. The operator keeps the image repository as
configuration and combines it with the tag.

- `imageTag` is required; a missing tag raises `kopf.PermanentError` (an
  unrecoverable error, so the operator does not retry).
- `_DEFAULT_IMAGE` is now the repository (no tag) and can be overridden by the
  `SVO_IMAGE` environment variable.
- `_DEFAULT_INGRESS_CLASS` can be overridden by the `SVO_INGRESS_CLASS`
  environment variable.
- `_DEFAULT_INGRESS_PROXY_BODY_SIZE` reduced from `500m` to `1m`.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@alanbchristie alanbchristie merged commit 117b29c into main Jun 8, 2026
2 checks passed
@alanbchristie alanbchristie deleted the squonk2-data-manager-viz-operator_abc-5-im-data-manager-image-tag branch June 8, 2026 07:24
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.

New spec.imDataManager behaviour

1 participant