zookeeper-operator icon indicating copy to clipboard operation
zookeeper-operator copied to clipboard

feat: Support `objectOverrides`

Open sbernauer opened this issue 1 month ago • 0 comments

Description

Needs https://github.com/stackabletech/operator-rs/pull/1118

Current WIP! state:

apiVersion: zookeeper.stackable.tech/v1alpha1
kind: ZookeeperCluster
metadata:
  name: simple-zk
spec:
  image:
    productVersion: 3.9.4
  servers:
    roleGroups:
      default:
        replicas: 1
  # NEW
  objectOverrides:
    - apiVersion: apps/v1
      kind: StatefulSet
      metadata:
        name: simple-zk-server-default
        namespace: default
        labels:
          custom: label
      spec:
        replicas: 2
        podManagementPolicy: Parallel
    - apiVersion: v1
      kind: ServiceAccount
      metadata:
        name: simple-zk-serviceaccount
        namespace: default
        labels:
          im-on: AWS
        annotations:
          custom: AWS
    - apiVersion: policy/v1
      kind: PodDisruptionBudget
      metadata:
        name: simple-zk-server
        namespace: default
      spec:
        maxUnavailable: 42
  # OLD
  # objectOverrides: |
  #   apiVersion: apps/v1
  #   kind: StatefulSet
  #   metadata:
  #     name: simple-zk-server-default
  #     namespace: default
  #     labels:
  #       custom: label
  #   spec:
  #     replicas: 2
  #     podManagementPolicy: Parallel
  #   ---
  #   apiVersion: v1
  #   kind: ServiceAccount
  #   metadata:
  #     name: simple-zk-serviceaccount
  #     namespace: default
  #     labels:
  #       im-on: AWS
  #     annotations:
  #       custom: AWS
  #   ---
  #   apiVersion: policy/v1
  #   kind: PodDisruptionBudget
  #   metadata:
  #     name: simple-zk-server
  #     namespace: default
  #   spec:
  #     maxUnavailable: 42

Definition of Done Checklist

  • Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
  • Please make sure all these things are done and tick the boxes

Author

  • [ ] Changes are OpenShift compatible
  • [ ] CRD changes approved
  • [ ] CRD documentation for all fields, following the style guide.
  • [ ] Helm chart can be installed and deployed operator works
  • [ ] Integration tests passed (for non trivial changes)
  • [ ] Changes need to be "offline" compatible
  • [ ] Links to generated (nightly) docs added
  • [ ] Release note snippet added

Reviewer

  • [ ] Code contains useful comments
  • [ ] Code contains useful logging statements
  • [ ] (Integration-)Test cases added
  • [ ] Documentation added or updated. Follows the style guide.
  • [ ] Changelog updated
  • [ ] Cargo.toml only contains references to git tags (not specific commits or branches)

Acceptance

  • [ ] Feature Tracker has been updated
  • [ ] Proper release label has been added
  • [ ] Links to generated (nightly) docs added
  • [ ] Release note snippet added
  • [ ] Add type/deprecation label & add to the deprecation schedule
  • [ ] Add type/experimental label & add to the experimental features tracker

sbernauer avatar Nov 10 '25 15:11 sbernauer