This tracks the process of introducing versioning for all CRD related data types and CRDs itself across the SDP. In addition to cross-cutting tasks, there are still some open tasks specific to the stackable-versioned crate. The ADR on CRD versioning will be written based on learnings from all phases.
Introduce stackable-versioned in all operator CRDs. This includes adding the macro to the CRD structs and producing the current v1alpha1 version without introducing any changes. Additionally, generate the merged CRD.
Replace the items in the task lists below with the applicable Pull Requests.
This tracks the process of introducing versioning for all CRD related data types and CRDs itself across the SDP. In addition to cross-cutting tasks, there are still some open tasks specific to the
stackable-versioned
crate. The ADR on CRD versioning will be written based on learnings from all phases.Documentation Tasks
Macro Tasks
These open tasks are taken from the CRD versioning macro tracking issue ^1.
Phase One
Introduce
stackable-versioned
in all operator CRDs. This includes adding the macro to the CRD structs and producing the currentv1alpha1
version without introducing any changes. Additionally, generate the merged CRD.Replace the items in the task lists below with the applicable Pull Requests.
Phase Two
This phase will be an end-to-end implementation of CRD versioning, meaning we do the following tasks:
stackable-versioned
for common CRD structs in operator-rs.stackable-webhook
crate and open PRs for any required changes encountered during development.stackable-versioned
andstackable-webhook
.Phase Three
Profit.