Skip to content

feat: Support floating tag in product image selection#1226

Draft
Techassi wants to merge 3 commits into
mainfrom
feat/product-image-selection-auto-update
Draft

feat: Support floating tag in product image selection#1226
Techassi wants to merge 3 commits into
mainfrom
feat/product-image-selection-auto-update

Conversation

@Techassi

Copy link
Copy Markdown
Member

This PR adds support for auto updating product images. This is done by using a floating tag for product images instead of fully-qualified ones.

Significant changes are:

  • Add a new autoUpdate field to the product image selection CRD interface:

    autoUpdate:
      default: false
      description: |-
        Automatically update the product image. Defaults to `false`.
    
        This mechanism utilizes a floating image tag which always refers to the latest patch version
        in the current release line. The current release line is either automatically derived, or
        can be overridden via `stackableVersion`.
    
        It should be noted that when this field is set to `true`, the operator uses `Always` as the
        pull policy for product images. If set to `false`, `IfNotPresent` is used. Explicitly
        setting `pullPolicy` takes precedence.
    
        ### Examples
    
        - The `stackableVersion` field is not set, the operator falls back to its own version, eg.
          26.7.0. If this field is set to `true`, the `26.7` floating tag will be used for product
          images, else, `26.7.0` will be used.
        - The `stackableVersion` field is set to `26.3.0`. If this field is set to `true`, the
          `26.3` floating tag will be used for product images, else, `26.3.0` will be used.
      type: boolean
  • Change the default pullPolicy from Always to IfNotPresent. This better aligns with the
    auto update feature, because if enabled, the pull policy is automatically set to Always. The
    current default is (as far as I can see) a leftover from the past. Even the doc comment states
    that Always is the default, as we support floating tags (not true).

  • The stackableVersion field is now a proper semantic version, instead of a plain string. This is
    needed, to correctly extract the floating tag if the auto update is enabled.

This PR also serves as a decision. Please vote with 👍 or 👎 or leave comments.

@Techassi Techassi self-assigned this Jun 18, 2026
@Techassi Techassi moved this to Development: In Progress in Stackable Engineering Jun 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Development: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant