feat(5): derive image from required imageTag and add SVO overrides#6
Merged
alanbchristie merged 1 commit intoJun 8, 2026
Conversation
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #5
The Data Manager now provides only an image tag
(
spec.imDataManager.imageTag, e.g.0.1.4) rather than a fullimage. Theoperator keeps the image repository as configuration and combines it with the
tag at create time.
Changes
imageTagis now required. A missing/empty tag raiseskopf.PermanentError(an unrecoverable error), so the operator does notretry. The combination logic lives in a new pure
build_image()function._DEFAULT_IMAGEis now the repository (no tag),ghcr.io/informaticsmatters/squonk2-viz-app, and can be overridden by theSVO_IMAGEenvironment variable._DEFAULT_INGRESS_CLASScan be overridden by the newSVO_INGRESS_CLASSenvironment variable.
_DEFAULT_INGRESS_PROXY_BODY_SIZEreduced from500mto1m.SVO_config table).Testing
TDD: tests added first in
tests/test_handlers.pyforbuild_image(includingthe
PermanentErroron a missing tag), theSVO_IMAGE/SVO_INGRESS_CLASSoverrides, and the new
1mproxy-body-size default. All 31 tests pass andpre-commit run(black, mypy, pylint) is clean.🤖 Generated with Claude Code