diff --git a/CHANGELOG.md b/CHANGELOG.md index 6d729b4b..10ef053a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ ## [Unreleased] +## [25.7.0] - 2025-07-23 + +## [25.7.0-rc1] - 2025-07-18 + ### Added - BREAKING: Add listener support for HBase ([#639]). @@ -32,6 +36,8 @@ - The default Kubernetes cluster domain name is now fetched from the kubelet API unless explicitly configured. - This requires operators to have the RBAC permission to get nodes/proxy in the apiGroup "". The helm-chart takes care of this. - The CLI argument `--kubernetes-node-name` or env variable `KUBERNETES_NODE_NAME` needs to be set. The helm-chart takes care of this. +- The operator helm-chart now grants RBAC `patch` permissions on `events.k8s.io/events`, + so events can be aggregated (e.g. "error happened 10 times over the last 5 minutes") ([#678]). ### Fixed @@ -62,6 +68,7 @@ [#661]: https://github.com/stackabletech/hbase-operator/pull/661 [#672]: https://github.com/stackabletech/hbase-operator/pull/672 [#675]: https://github.com/stackabletech/hbase-operator/pull/675 +[#678]: https://github.com/stackabletech/hbase-operator/pull/678 ## [25.3.0] - 2025-03-21 diff --git a/Cargo.lock b/Cargo.lock index 55ce2a27..4c843a65 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2587,7 +2587,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "stackable-hbase-operator" -version = "0.0.0-dev" +version = "25.7.0" dependencies = [ "anyhow", "built", diff --git a/Cargo.nix b/Cargo.nix index 112f269e..5e2bbd82 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -8367,7 +8367,7 @@ rec { }; "stackable-hbase-operator" = rec { crateName = "stackable-hbase-operator"; - version = "0.0.0-dev"; + version = "25.7.0"; edition = "2021"; crateBin = [ { diff --git a/Cargo.toml b/Cargo.toml index 6187f777..abc45976 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ members = ["rust/operator-binary"] resolver = "2" [workspace.package] -version = "0.0.0-dev" +version = "25.7.0" authors = ["Stackable GmbH "] license = "OSL-3.0" edition = "2021" diff --git a/deploy/helm/hbase-operator/Chart.yaml b/deploy/helm/hbase-operator/Chart.yaml index c5e2f7dc..8be8b52c 100644 --- a/deploy/helm/hbase-operator/Chart.yaml +++ b/deploy/helm/hbase-operator/Chart.yaml @@ -1,8 +1,8 @@ --- apiVersion: v2 name: hbase-operator -version: "0.0.0-dev" -appVersion: "0.0.0-dev" +version: "25.7.0" +appVersion: "25.7.0" description: The Stackable Operator for Apache HBase home: https://github.com/stackabletech/hbase-operator maintainers: diff --git a/deploy/helm/hbase-operator/crds/crds.yaml b/deploy/helm/hbase-operator/crds/crds.yaml index cb33fa51..d8145450 100644 --- a/deploy/helm/hbase-operator/crds/crds.yaml +++ b/deploy/helm/hbase-operator/crds/crds.yaml @@ -24,7 +24,7 @@ spec: properties: spec: description: |- - An HBase cluster stacklet. This resource is managed by the Stackable operator for Apache HBase. Find more information on how to use it and the resources that the operator generates in the [operator documentation](https://docs.stackable.tech/home/nightly/hbase/). + An HBase cluster stacklet. This resource is managed by the Stackable operator for Apache HBase. Find more information on how to use it and the resources that the operator generates in the [operator documentation](https://docs.stackable.tech/home/25.7/hbase/). The CRD contains three roles: `masters`, `regionServers` and `restServers`. properties: @@ -32,7 +32,7 @@ spec: description: Configuration that applies to all roles and role groups. This includes settings for logging, ZooKeeper and HDFS connection, among other things. properties: authentication: - description: Settings related to user [authentication](https://docs.stackable.tech/home/nightly/usage-guide/security). + description: Settings related to user [authentication](https://docs.stackable.tech/home/25.7/usage-guide/security). nullable: true properties: kerberos: @@ -55,10 +55,10 @@ spec: nullable: true properties: opa: - description: Configure the OPA stacklet [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) and the name of the Rego package containing your authorization rules. Consult the [OPA authorization documentation](https://docs.stackable.tech/home/nightly/concepts/opa) to learn how to deploy Rego authorization rules with OPA. + description: Configure the OPA stacklet [discovery ConfigMap](https://docs.stackable.tech/home/25.7/concepts/service_discovery) and the name of the Rego package containing your authorization rules. Consult the [OPA authorization documentation](https://docs.stackable.tech/home/25.7/concepts/opa) to learn how to deploy Rego authorization rules with OPA. properties: configMapName: - description: The [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) for the OPA stacklet that should be used for authorization requests. + description: The [discovery ConfigMap](https://docs.stackable.tech/home/25.7/concepts/service_discovery) for the OPA stacklet that should be used for authorization requests. type: string package: description: The name of the Rego package containing the Rego rules for the product. @@ -71,14 +71,14 @@ spec: - opa type: object hdfsConfigMapName: - description: Name of the [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) for an HDFS cluster. + description: Name of the [discovery ConfigMap](https://docs.stackable.tech/home/25.7/concepts/service_discovery) for an HDFS cluster. type: string vectorAggregatorConfigMapName: - description: Name of the Vector aggregator [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery). It must contain the key `ADDRESS` with the address of the Vector aggregator. Follow the [logging tutorial](https://docs.stackable.tech/home/nightly/tutorials/logging-vector-aggregator) to learn how to configure log aggregation with Vector. + description: Name of the Vector aggregator [discovery ConfigMap](https://docs.stackable.tech/home/25.7/concepts/service_discovery). It must contain the key `ADDRESS` with the address of the Vector aggregator. Follow the [logging tutorial](https://docs.stackable.tech/home/25.7/tutorials/logging-vector-aggregator) to learn how to configure log aggregation with Vector. nullable: true type: string zookeeperConfigMapName: - description: Name of the [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) for a ZooKeeper cluster. + description: Name of the [discovery ConfigMap](https://docs.stackable.tech/home/25.7/concepts/service_discovery) for a ZooKeeper cluster. type: string required: - hdfsConfigMapName @@ -88,7 +88,7 @@ spec: default: reconciliationPaused: false stopped: false - description: '[Cluster operations](https://docs.stackable.tech/home/nightly/concepts/operations/cluster_operations) properties, allow stopping the product instance as well as pausing reconciliation.' + description: '[Cluster operations](https://docs.stackable.tech/home/25.7/concepts/operations/cluster_operations) properties, allow stopping the product instance as well as pausing reconciliation.' properties: reconciliationPaused: default: false @@ -109,7 +109,7 @@ spec: description: |- Specify which image to use, the easiest way is to only configure the `productVersion`. You can also configure a custom image registry to pull from, as well as completely custom images. - Consult the [Product image selection documentation](https://docs.stackable.tech/home/nightly/concepts/product_image_selection) for details. + Consult the [Product image selection documentation](https://docs.stackable.tech/home/25.7/concepts/product_image_selection) for details. properties: custom: description: Overwrite the docker image. Specify the full docker image name, e.g. `oci.stackable.tech/sdp/superset:1.4.1-stackable2.1.0` @@ -165,7 +165,7 @@ spec: nodeSelector: null podAffinity: null podAntiAffinity: null - description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/25.7/concepts/operations/pod_placement). properties: nodeAffinity: description: Same as the `spec.affinity.nodeAffinity` field on the Pod, see the [Kubernetes docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node) @@ -197,14 +197,14 @@ spec: nullable: true type: string listenerClass: - description: This field controls which [ListenerClass](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass.html) is used to expose this rolegroup. + description: This field controls which [ListenerClass](https://docs.stackable.tech/home/25.7/listener-operator/listenerclass.html) is used to expose this rolegroup. nullable: true type: string logging: default: containers: {} enableVectorAgent: null - description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/nightly/concepts/logging). + description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/25.7/concepts/logging). properties: containers: additionalProperties: @@ -333,20 +333,20 @@ spec: type: string type: object default: {} - description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. + description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. type: object envOverrides: additionalProperties: type: string default: {} - description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' + description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' type: object jvmArgumentOverrides: default: add: [] remove: [] removeRegex: [] - description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#jvm-argument-overrides) for details on the usage. + description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: default: [] @@ -369,7 +369,7 @@ spec: type: object podOverrides: default: {} - description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) for more information. + description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true roleConfig: @@ -388,7 +388,7 @@ spec: 1. If PodDisruptionBudgets are created by the operator 2. The allowed number of Pods to be unavailable (`maxUnavailable`) - Learn more in the [allowed Pod disruptions documentation](https://docs.stackable.tech/home/nightly/concepts/operations/pod_disruptions). + Learn more in the [allowed Pod disruptions documentation](https://docs.stackable.tech/home/25.7/concepts/operations/pod_disruptions). properties: enabled: default: true @@ -419,7 +419,7 @@ spec: nodeSelector: null podAffinity: null podAntiAffinity: null - description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/25.7/concepts/operations/pod_placement). properties: nodeAffinity: description: Same as the `spec.affinity.nodeAffinity` field on the Pod, see the [Kubernetes docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node) @@ -451,14 +451,14 @@ spec: nullable: true type: string listenerClass: - description: This field controls which [ListenerClass](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass.html) is used to expose this rolegroup. + description: This field controls which [ListenerClass](https://docs.stackable.tech/home/25.7/listener-operator/listenerclass.html) is used to expose this rolegroup. nullable: true type: string logging: default: containers: {} enableVectorAgent: null - description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/nightly/concepts/logging). + description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/25.7/concepts/logging). properties: containers: additionalProperties: @@ -587,20 +587,20 @@ spec: type: string type: object default: {} - description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. + description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. type: object envOverrides: additionalProperties: type: string default: {} - description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' + description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' type: object jvmArgumentOverrides: default: add: [] remove: [] removeRegex: [] - description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#jvm-argument-overrides) for details on the usage. + description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: default: [] @@ -623,7 +623,7 @@ spec: type: object podOverrides: default: {} - description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) for more information. + description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true replicas: @@ -654,7 +654,7 @@ spec: nodeSelector: null podAffinity: null podAntiAffinity: null - description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/25.7/concepts/operations/pod_placement). properties: nodeAffinity: description: Same as the `spec.affinity.nodeAffinity` field on the Pod, see the [Kubernetes docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node) @@ -686,14 +686,14 @@ spec: nullable: true type: string listenerClass: - description: This field controls which [ListenerClass](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass.html) is used to expose this rolegroup. + description: This field controls which [ListenerClass](https://docs.stackable.tech/home/25.7/listener-operator/listenerclass.html) is used to expose this rolegroup. nullable: true type: string logging: default: containers: {} enableVectorAgent: null - description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/nightly/concepts/logging). + description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/25.7/concepts/logging). properties: containers: additionalProperties: @@ -850,20 +850,20 @@ spec: type: string type: object default: {} - description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. + description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. type: object envOverrides: additionalProperties: type: string default: {} - description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' + description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' type: object jvmArgumentOverrides: default: add: [] remove: [] removeRegex: [] - description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#jvm-argument-overrides) for details on the usage. + description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: default: [] @@ -886,7 +886,7 @@ spec: type: object podOverrides: default: {} - description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) for more information. + description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true roleConfig: @@ -905,7 +905,7 @@ spec: 1. If PodDisruptionBudgets are created by the operator 2. The allowed number of Pods to be unavailable (`maxUnavailable`) - Learn more in the [allowed Pod disruptions documentation](https://docs.stackable.tech/home/nightly/concepts/operations/pod_disruptions). + Learn more in the [allowed Pod disruptions documentation](https://docs.stackable.tech/home/25.7/concepts/operations/pod_disruptions). properties: enabled: default: true @@ -936,7 +936,7 @@ spec: nodeSelector: null podAffinity: null podAntiAffinity: null - description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/25.7/concepts/operations/pod_placement). properties: nodeAffinity: description: Same as the `spec.affinity.nodeAffinity` field on the Pod, see the [Kubernetes docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node) @@ -968,14 +968,14 @@ spec: nullable: true type: string listenerClass: - description: This field controls which [ListenerClass](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass.html) is used to expose this rolegroup. + description: This field controls which [ListenerClass](https://docs.stackable.tech/home/25.7/listener-operator/listenerclass.html) is used to expose this rolegroup. nullable: true type: string logging: default: containers: {} enableVectorAgent: null - description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/nightly/concepts/logging). + description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/25.7/concepts/logging). properties: containers: additionalProperties: @@ -1132,20 +1132,20 @@ spec: type: string type: object default: {} - description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. + description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. type: object envOverrides: additionalProperties: type: string default: {} - description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' + description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' type: object jvmArgumentOverrides: default: add: [] remove: [] removeRegex: [] - description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#jvm-argument-overrides) for details on the usage. + description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: default: [] @@ -1168,7 +1168,7 @@ spec: type: object podOverrides: default: {} - description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) for more information. + description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true replicas: @@ -1199,7 +1199,7 @@ spec: nodeSelector: null podAffinity: null podAntiAffinity: null - description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/25.7/concepts/operations/pod_placement). properties: nodeAffinity: description: Same as the `spec.affinity.nodeAffinity` field on the Pod, see the [Kubernetes docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node) @@ -1231,14 +1231,14 @@ spec: nullable: true type: string listenerClass: - description: This field controls which [ListenerClass](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass.html) is used to expose this rolegroup. + description: This field controls which [ListenerClass](https://docs.stackable.tech/home/25.7/listener-operator/listenerclass.html) is used to expose this rolegroup. nullable: true type: string logging: default: containers: {} enableVectorAgent: null - description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/nightly/concepts/logging). + description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/25.7/concepts/logging). properties: containers: additionalProperties: @@ -1367,20 +1367,20 @@ spec: type: string type: object default: {} - description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. + description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. type: object envOverrides: additionalProperties: type: string default: {} - description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' + description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' type: object jvmArgumentOverrides: default: add: [] remove: [] removeRegex: [] - description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#jvm-argument-overrides) for details on the usage. + description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: default: [] @@ -1403,7 +1403,7 @@ spec: type: object podOverrides: default: {} - description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) for more information. + description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true roleConfig: @@ -1422,7 +1422,7 @@ spec: 1. If PodDisruptionBudgets are created by the operator 2. The allowed number of Pods to be unavailable (`maxUnavailable`) - Learn more in the [allowed Pod disruptions documentation](https://docs.stackable.tech/home/nightly/concepts/operations/pod_disruptions). + Learn more in the [allowed Pod disruptions documentation](https://docs.stackable.tech/home/25.7/concepts/operations/pod_disruptions). properties: enabled: default: true @@ -1453,7 +1453,7 @@ spec: nodeSelector: null podAffinity: null podAntiAffinity: null - description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + description: These configuration settings control [Pod placement](https://docs.stackable.tech/home/25.7/concepts/operations/pod_placement). properties: nodeAffinity: description: Same as the `spec.affinity.nodeAffinity` field on the Pod, see the [Kubernetes docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node) @@ -1485,14 +1485,14 @@ spec: nullable: true type: string listenerClass: - description: This field controls which [ListenerClass](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass.html) is used to expose this rolegroup. + description: This field controls which [ListenerClass](https://docs.stackable.tech/home/25.7/listener-operator/listenerclass.html) is used to expose this rolegroup. nullable: true type: string logging: default: containers: {} enableVectorAgent: null - description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/nightly/concepts/logging). + description: Logging configuration, learn more in the [logging concept documentation](https://docs.stackable.tech/home/25.7/concepts/logging). properties: containers: additionalProperties: @@ -1621,20 +1621,20 @@ spec: type: string type: object default: {} - description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. + description: The `configOverrides` can be used to configure properties in product config files that are not exposed in the CRD. Read the [config overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#config-overrides) and consult the operator specific usage guide documentation for details on the available config files and settings for the specific product. type: object envOverrides: additionalProperties: type: string default: {} - description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' + description: '`envOverrides` configure environment variables to be set in the Pods. It is a map from strings to strings - environment variables and the value to set. Read the [environment variable overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#env-overrides) for more information and consult the operator specific usage guide to find out about the product specific environment variables that are available.' type: object jvmArgumentOverrides: default: add: [] remove: [] removeRegex: [] - description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#jvm-argument-overrides) for details on the usage. + description: Allows overriding JVM arguments. Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: default: [] @@ -1657,7 +1657,7 @@ spec: type: object podOverrides: default: {} - description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) for more information. + description: In the `podOverrides` property you can define a [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on a Kubernetes Pod. Read the [Pod overrides documentation](https://docs.stackable.tech/home/25.7/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true replicas: diff --git a/deploy/helm/hbase-operator/templates/roles.yaml b/deploy/helm/hbase-operator/templates/roles.yaml index 19e57650..606b5025 100644 --- a/deploy/helm/hbase-operator/templates/roles.yaml +++ b/deploy/helm/hbase-operator/templates/roles.yaml @@ -135,6 +135,7 @@ rules: - events verbs: - create + - patch {{ if .Capabilities.APIVersions.Has "security.openshift.io/v1" }} - apiGroups: - security.openshift.io diff --git a/docs/antora.yml b/docs/antora.yml index d522680b..35013e93 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -1,3 +1,4 @@ --- name: home -version: "nightly" +version: "25.7" +prerelease: false diff --git a/docs/modules/hbase/examples/getting_started/getting_started.sh b/docs/modules/hbase/examples/getting_started/getting_started.sh index f4282b4e..c93619c9 100755 --- a/docs/modules/hbase/examples/getting_started/getting_started.sh +++ b/docs/modules/hbase/examples/getting_started/getting_started.sh @@ -21,12 +21,12 @@ case "$1" in "helm") echo "Installing Operators with Helm" # tag::helm-install-operators[] -helm install --wait zookeeper-operator oci://oci.stackable.tech/sdp-charts/zookeeper-operator --version 0.0.0-dev & -helm install --wait hdfs-operator oci://oci.stackable.tech/sdp-charts/hdfs-operator --version 0.0.0-dev & -helm install --wait commons-operator oci://oci.stackable.tech/sdp-charts/commons-operator --version 0.0.0-dev & -helm install --wait secret-operator oci://oci.stackable.tech/sdp-charts/secret-operator --version 0.0.0-dev & -helm install --wait listener-operator oci://oci.stackable.tech/sdp-charts/listener-operator --version 0.0.0-dev & -helm install --wait hbase-operator oci://oci.stackable.tech/sdp-charts/hbase-operator --version 0.0.0-dev & +helm install --wait zookeeper-operator oci://oci.stackable.tech/sdp-charts/zookeeper-operator --version 25.7.0 & +helm install --wait hdfs-operator oci://oci.stackable.tech/sdp-charts/hdfs-operator --version 25.7.0 & +helm install --wait commons-operator oci://oci.stackable.tech/sdp-charts/commons-operator --version 25.7.0 & +helm install --wait secret-operator oci://oci.stackable.tech/sdp-charts/secret-operator --version 25.7.0 & +helm install --wait listener-operator oci://oci.stackable.tech/sdp-charts/listener-operator --version 25.7.0 & +helm install --wait hbase-operator oci://oci.stackable.tech/sdp-charts/hbase-operator --version 25.7.0 & wait # end::helm-install-operators[] ;; @@ -34,12 +34,12 @@ wait echo "installing Operators with stackablectl" # tag::stackablectl-install-operators[] stackablectl operator install \ - commons=0.0.0-dev \ - secret=0.0.0-dev \ - listener=0.0.0-dev \ - zookeeper=0.0.0-dev \ - hdfs=0.0.0-dev \ - hbase=0.0.0-dev + commons=25.7.0 \ + secret=25.7.0 \ + listener=25.7.0 \ + zookeeper=25.7.0 \ + hdfs=25.7.0 \ + hbase=25.7.0 # end::stackablectl-install-operators[] ;; *) @@ -129,7 +129,7 @@ version() { echo "Check cluster version..." cluster_version=$(version | jq -r '.Version') -if [ "$cluster_version" == "2.6.2-stackable0.0.0-dev" ]; then +if [ "$cluster_version" == "2.6.2-stackable25.7.0" ]; then echo "Cluster version: $cluster_version" else echo "Unexpected version: $cluster_version" diff --git a/docs/modules/hbase/examples/getting_started/getting_started.sh.j2 b/docs/modules/hbase/examples/getting_started/getting_started.sh.j2 index d53e4872..615c8c3d 100755 --- a/docs/modules/hbase/examples/getting_started/getting_started.sh.j2 +++ b/docs/modules/hbase/examples/getting_started/getting_started.sh.j2 @@ -129,7 +129,7 @@ version() { echo "Check cluster version..." cluster_version=$(version | jq -r '.Version') -if [ "$cluster_version" == "2.6.2-stackable0.0.0-dev" ]; then +if [ "$cluster_version" == "2.6.2-stackable25.7.0" ]; then echo "Cluster version: $cluster_version" else echo "Unexpected version: $cluster_version" diff --git a/docs/modules/hbase/examples/getting_started/install_output.txt b/docs/modules/hbase/examples/getting_started/install_output.txt index d3a3db99..35d58bc7 100644 --- a/docs/modules/hbase/examples/getting_started/install_output.txt +++ b/docs/modules/hbase/examples/getting_started/install_output.txt @@ -1,6 +1,6 @@ -Installed commons=0.0.0-dev operator -Installed secret=0.0.0-dev operator -Installed listener=0.0.0-dev operator -Installed zookeeper=0.0.0-dev operator -Installed hdfs=0.0.0-dev operator -Installed hbase=0.0.0-dev operator +Installed commons=25.7.0 operator +Installed secret=25.7.0 operator +Installed listener=25.7.0 operator +Installed zookeeper=25.7.0 operator +Installed hdfs=25.7.0 operator +Installed hbase=25.7.0 operator diff --git a/docs/modules/hbase/examples/usage-guide/hbck2-job.yaml b/docs/modules/hbase/examples/usage-guide/hbck2-job.yaml index 3abae00a..fe0f0e78 100644 --- a/docs/modules/hbase/examples/usage-guide/hbck2-job.yaml +++ b/docs/modules/hbase/examples/usage-guide/hbck2-job.yaml @@ -8,7 +8,7 @@ spec: spec: containers: - name: hbck2 - image: oci.stackable.tech/sdp/hbase:2.6.2-stackable0.0.0-dev + image: oci.stackable.tech/sdp/hbase:2.6.2-stackable25.7.0 volumeMounts: - name: hbase-config mountPath: /stackable/conf diff --git a/docs/modules/hbase/examples/usage-guide/snapshot-export-job.yaml b/docs/modules/hbase/examples/usage-guide/snapshot-export-job.yaml index 9db3626b..7841c25f 100644 --- a/docs/modules/hbase/examples/usage-guide/snapshot-export-job.yaml +++ b/docs/modules/hbase/examples/usage-guide/snapshot-export-job.yaml @@ -8,7 +8,7 @@ spec: spec: containers: - name: hbase - image: oci.stackable.tech/sdp/hbase:2.6.2-stackable0.0.0-dev + image: oci.stackable.tech/sdp/hbase:2.6.2-stackable25.7.0 volumeMounts: - name: hbase-config mountPath: /stackable/conf diff --git a/docs/modules/hbase/partials/supported-versions.adoc b/docs/modules/hbase/partials/supported-versions.adoc index 1b349117..6c635205 100644 --- a/docs/modules/hbase/partials/supported-versions.adoc +++ b/docs/modules/hbase/partials/supported-versions.adoc @@ -2,5 +2,5 @@ // This is a separate file, since it is used by both the direct HBase-Operator documentation, and the overarching // Stackable Platform documentation. -- 2.6.1 (LTS) -- 2.6.2 +- 2.6.2 (LTS) +- 2.6.1 (Deprecated) diff --git a/docs/templating_vars.yaml b/docs/templating_vars.yaml index 5ab6cf20..a21af796 100644 --- a/docs/templating_vars.yaml +++ b/docs/templating_vars.yaml @@ -3,9 +3,9 @@ helm: repo_name: sdp-charts repo_url: oci.stackable.tech versions: - commons: 0.0.0-dev - secret: 0.0.0-dev - listener: 0.0.0-dev - zookeeper: 0.0.0-dev - hdfs: 0.0.0-dev - hbase: 0.0.0-dev + commons: 25.7.0 + secret: 25.7.0 + listener: 25.7.0 + zookeeper: 25.7.0 + hdfs: 25.7.0 + hbase: 25.7.0 diff --git a/tests/release.yaml b/tests/release.yaml index eb06617e..ef53f8d7 100644 --- a/tests/release.yaml +++ b/tests/release.yaml @@ -7,16 +7,16 @@ releases: description: Integration test products: commons: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0 secret: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0 listener: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0 zookeeper: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0 hdfs: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0 hbase: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0 opa: - operatorVersion: 0.0.0-dev + operatorVersion: 25.7.0