Skip to content

Add product image selection struct #470

@vsupalov

Description

@vsupalov

Implementation of design described in ADR023. Create reusable code, which will be integrated into all operators to enable new product/operator version specification.

This task is related to two epics:

The first epic is the primary focus at the moment, as it is a major blocker to get to multi-arch.

The feature will be implemented to be optional for now.

Acceptance criteria

  • Capture requirements described in ADR as test cases for the feature inside of operator-rs
    • All use cases and config examples described in "Option 6"
    • All examples described in "Decision Drivers"
  • Operator using this in the future, will tell the function what product it operates on (to build the image name)
  • Provide helper functions in operator-rs to replace existing helper functions like image_version and product_version in operator codebases
  • Implement pullPolicy as well
  • Implement stackableVersion case handling, as described in ADR Option 6
  • Implement custom case handling, as described in ADR Option 6
    • limit functionality to public repositories
    • OPTIONAL: Implement pullSecrets aspects of ADR, and using private repositories
  • Implement erroring when user tries to use stackable format for now
  • Use changes in Spike: Operator changes for multi-arch kafka-operator#477 to verify that the solution is viable and usable

Related out-of-scope followup tasks

To be performed in stackabletech/issues#257

  • If not implemented above: pullSecrets aspects of ADR, and using private repositories

Status

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions