Skip to content

tracking: Remove hard coded registry and path from operators #716

@razvan

Description

@razvan

Description

The goal of this issue is to make the SDP installable from other repos than oci.stackable.tech.

It is currently very hard (and sometimes impossible) to customize the registry/repository used by operators to construct the final product image name.
In order to fix that, the issue is tackled on a few different levels:

  1. The CI pipelines must become the authoritative source of truth for our artifacts and where they are published. Currently, our operator and product container images as well as Helm Charts are only published to oci.stackable.tech. Artifacts available on quay.io/stackable are only mirrored from oci.stackable.tech and don't include Helm Charts. Going forward, we want to publish all artifacts directly to both registries via our CI pipelines.
  2. Our Helm Charts carry information about their origin (where they are installed from). These pieces of data can then be used during deployment time to provide operators with a default registry used for product image selection/resolving.
  3. Our operators provide a way to set the default image registry/repository used as a fallback during product image selection. Users must still be able to completely override the product image used if automatic selection is not desired.

Tasks

Note

The core operators technically currently don't need the --image-repository argument. The CLI will expose that argument once stackable-operator is bumped to > 0.111.0, which introduces a required arg not used by the operator.

Acceptance criteria

  1. Helm charts are available on both oci.stackable.tech as well as quay.io.
  2. Helm charts on oci.stackable.tech reference images on that repo. Same for quay.io.
  3. Operators are explicitly configured by the package managers (Helm and OLM currently) with a repo for product images.
  4. Custom resources should not be affected, meaning that users which just specify spec.image.productVersion without providing a completely override should just work as before.

Relevant decisions

Metadata

Metadata

Assignees

Labels

release-noteDenotes a PR that will be considered when it comes time to generate release notes.scheduled-for/26.7.0

Type

No type
No fields configured for issues without a type.

Projects

Status
Development: Done
Status
In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions