From e281d12f2b1f512c901112867111e369f80ef138 Mon Sep 17 00:00:00 2001 From: Nick Larsen Date: Mon, 16 Mar 2026 10:59:01 +0100 Subject: [PATCH] chore: Release 26.3.0-rc1 Signed-off-by: Nick Larsen --- CHANGELOG.md | 2 + Cargo.lock | 2 +- Cargo.nix | 2 +- Cargo.toml | 2 +- deploy/helm/nifi-operator/Chart.yaml | 4 +- docs/antora.yml | 3 +- .../getting_started/getting_started.sh | 16 ++--- .../getting_started/install_output.txt | 8 +-- docs/templating_vars.yaml | 8 +-- extra/crds.yaml | 64 +++++++++---------- tests/release.yaml | 18 +++--- 11 files changed, 66 insertions(+), 63 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24c7e400..e02fdd62 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +## [26.3.0-rc1] - 2026-03-16 + ### Added - Add conversion webhook ([#898]). diff --git a/Cargo.lock b/Cargo.lock index d0f5daba..94015740 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2961,7 +2961,7 @@ dependencies = [ [[package]] name = "stackable-nifi-operator" -version = "0.0.0-dev" +version = "26.3.0-rc1" dependencies = [ "anyhow", "built", diff --git a/Cargo.nix b/Cargo.nix index cc67e4af..de8809f9 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -9860,7 +9860,7 @@ rec { }; "stackable-nifi-operator" = rec { crateName = "stackable-nifi-operator"; - version = "0.0.0-dev"; + version = "26.3.0-rc1"; edition = "2021"; crateBin = [ { diff --git a/Cargo.toml b/Cargo.toml index 4ab5c421..17c9c5a6 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 = "26.3.0-rc1" authors = ["Stackable GmbH "] license = "OSL-3.0" edition = "2021" diff --git a/deploy/helm/nifi-operator/Chart.yaml b/deploy/helm/nifi-operator/Chart.yaml index df0899fc..040cb12d 100644 --- a/deploy/helm/nifi-operator/Chart.yaml +++ b/deploy/helm/nifi-operator/Chart.yaml @@ -1,8 +1,8 @@ --- apiVersion: v2 name: nifi-operator -version: "0.0.0-dev" -appVersion: "0.0.0-dev" +version: "26.3.0-rc1" +appVersion: "26.3.0-rc1" description: The Stackable Operator for Apache NiFi home: https://github.com/stackabletech/nifi-operator maintainers: diff --git a/docs/antora.yml b/docs/antora.yml index d522680b..dcbff1a3 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -1,3 +1,4 @@ --- name: home -version: "nightly" +version: "26.3" +prerelease: false diff --git a/docs/modules/nifi/examples/getting_started/getting_started.sh b/docs/modules/nifi/examples/getting_started/getting_started.sh index 6b12b550..f3f6cf96 100755 --- a/docs/modules/nifi/examples/getting_started/getting_started.sh +++ b/docs/modules/nifi/examples/getting_started/getting_started.sh @@ -29,20 +29,20 @@ case "$1" in "helm") echo "Installing Operators with Helm" # tag::helm-install-operators[] -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 nifi-operator oci://oci.stackable.tech/sdp-charts/nifi-operator --version 0.0.0-dev +helm install --wait commons-operator oci://oci.stackable.tech/sdp-charts/commons-operator --version 26.3.0-rc1 +helm install --wait secret-operator oci://oci.stackable.tech/sdp-charts/secret-operator --version 26.3.0-rc1 +helm install --wait listener-operator oci://oci.stackable.tech/sdp-charts/listener-operator --version 26.3.0-rc1 +helm install --wait nifi-operator oci://oci.stackable.tech/sdp-charts/nifi-operator --version 26.3.0-rc1 # end::helm-install-operators[] ;; "stackablectl") 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 \ - nifi=0.0.0-dev + commons=26.3.0-rc1 \ + secret=26.3.0-rc1 \ + listener=26.3.0-rc1 \ + nifi=26.3.0-rc1 # end::stackablectl-install-operators[] ;; *) diff --git a/docs/modules/nifi/examples/getting_started/install_output.txt b/docs/modules/nifi/examples/getting_started/install_output.txt index 0340bdbb..f5a6a5ee 100644 --- a/docs/modules/nifi/examples/getting_started/install_output.txt +++ b/docs/modules/nifi/examples/getting_started/install_output.txt @@ -1,4 +1,4 @@ -Installed commons=0.0.0-dev operator -Installed secret=0.0.0-dev operator -Installed listener=0.0.0-dev operator -Installed nifi=0.0.0-dev operator +Installed commons=26.3.0-rc1 operator +Installed secret=26.3.0-rc1 operator +Installed listener=26.3.0-rc1 operator +Installed nifi=26.3.0-rc1 operator diff --git a/docs/templating_vars.yaml b/docs/templating_vars.yaml index 89ccfd01..11350953 100644 --- a/docs/templating_vars.yaml +++ b/docs/templating_vars.yaml @@ -3,7 +3,7 @@ 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 - nifi: 0.0.0-dev + commons: 26.3.0-rc1 + secret: 26.3.0-rc1 + listener: 26.3.0-rc1 + nifi: 26.3.0-rc1 diff --git a/extra/crds.yaml b/extra/crds.yaml index c1e8105f..a17d87e7 100644 --- a/extra/crds.yaml +++ b/extra/crds.yaml @@ -24,7 +24,7 @@ spec: description: |- A NiFi cluster stacklet. This resource is managed by the Stackable operator for Apache NiFi. 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/nifi/). + [operator documentation](https://docs.stackable.tech/home/26.3/nifi/). properties: clusterConfig: anyOf: @@ -38,11 +38,11 @@ spec: authentication: description: |- Authentication options for NiFi (required). - Read more about authentication in the [security documentation](https://docs.stackable.tech/home/nightly/nifi/usage_guide/security#authentication). + Read more about authentication in the [security documentation](https://docs.stackable.tech/home/26.3/nifi/usage_guide/security#authentication). items: properties: authenticationClass: - description: Name of the [AuthenticationClass](https://docs.stackable.tech/home/nightly/concepts/authentication) used to authenticate users + description: Name of the [AuthenticationClass](https://docs.stackable.tech/home/26.3/concepts/authentication) used to authenticate users type: string oidc: description: This field contains OIDC-specific configuration. It is only required in case OIDC is used. @@ -71,7 +71,7 @@ spec: singleUser: {} description: |- Authorization options. - Learn more in the [NiFi authorization usage guide](https://docs.stackable.tech/home/nightly/nifi/usage-guide/security#authorization). + Learn more in the [NiFi authorization usage guide](https://docs.stackable.tech/home/26.3/nifi/usage-guide/security#authorization). oneOf: - required: - opa @@ -82,9 +82,9 @@ spec: properties: opa: description: |- - Configure the OPA stacklet [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) + Configure the OPA stacklet [discovery ConfigMap](https://docs.stackable.tech/home/26.3/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) + Consult the [OPA authorization documentation](https://docs.stackable.tech/home/26.3/concepts/opa) to learn how to deploy Rego authorization rules with OPA. properties: cache: @@ -108,7 +108,7 @@ spec: type: object configMapName: description: |- - The [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) + The [discovery ConfigMap](https://docs.stackable.tech/home/26.3/concepts/service_discovery) for the OPA stacklet that should be used for authorization requests. type: string package: @@ -161,7 +161,7 @@ spec: [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#podtemplatespec-v1-core) to override any property that can be set on the Pod of the create-reporting-task Kubernetes Job. Read the - [Pod overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#pod-overrides) + [Pod overrides documentation](https://docs.stackable.tech/home/26.3/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true @@ -171,7 +171,7 @@ spec: description: |- The `customComponentsGitSync` setting allows configuring custom components to mount via `git-sync`. Learn more in the documentation for - [Loading custom components](https://docs.stackable.tech/home/nightly/nifi/usage_guide/custom-components.html#git_sync). + [Loading custom components](https://docs.stackable.tech/home/26.3/nifi/usage_guide/custom-components.html#git_sync). items: properties: branch: @@ -209,7 +209,7 @@ spec: Also read the git-sync [example] in our documentation. These settings are not verified. [documentation]: https://github.com/kubernetes/git-sync/tree/v4.2.4?tab=readme-ov-file#manual - [example]: https://docs.stackable.tech/home/nightly/airflow/usage-guide/mounting-dags#_example + [example]: https://docs.stackable.tech/home/26.3/airflow/usage-guide/mounting-dags#_example type: object repo: description: 'The git repository URL that will be cloned, for example: `https://github.com/stackabletech/airflow-operator` or `ssh://git@github.com:stackable-airflow/dags.git`.' @@ -231,7 +231,7 @@ spec: Extra volumes similar to `.spec.volumes` on a Pod to mount into every container, this can be useful to for example make client certificates, keytabs or similar things available to processors. These volumes will be mounted into all pods at `/stackable/userdata/{volumename}`. - See also the [external files usage guide](https://docs.stackable.tech/home/nightly/nifi/usage_guide/extra-volumes). + See also the [external files usage guide](https://docs.stackable.tech/home/26.3/nifi/usage_guide/extra-volumes). items: type: object x-kubernetes-preserve-unknown-fields: true @@ -326,17 +326,17 @@ spec: type: object vectorAggregatorConfigMapName: description: |- - Name of the Vector aggregator [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery). + Name of the Vector aggregator [discovery ConfigMap](https://docs.stackable.tech/home/26.3/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) + Follow the [logging tutorial](https://docs.stackable.tech/home/26.3/tutorials/logging-vector-aggregator) to learn how to configure log aggregation with Vector. nullable: true type: string zookeeperConfigMapName: description: |- NiFi can either use ZooKeeper or Kubernetes for managing its cluster state. To use ZooKeeper, provide the name of the - ZooKeeper [discovery ConfigMap](https://docs.stackable.tech/home/nightly/concepts/service_discovery) here. - When using the [Stackable operator for Apache ZooKeeper](https://docs.stackable.tech/home/nightly/zookeeper/) + ZooKeeper [discovery ConfigMap](https://docs.stackable.tech/home/26.3/concepts/service_discovery) here. + When using the [Stackable operator for Apache ZooKeeper](https://docs.stackable.tech/home/26.3/zookeeper/) to deploy a ZooKeeper cluster, this will simply be the name of your ZookeeperCluster resource. The Kubernetes provider will be used if this field is unset. Kubernetes is only supported for NiFi 2.x and newer, @@ -351,7 +351,7 @@ spec: reconciliationPaused: false stopped: false description: |- - [Cluster operations](https://docs.stackable.tech/home/nightly/concepts/operations/cluster_operations) + [Cluster operations](https://docs.stackable.tech/home/26.3/concepts/operations/cluster_operations) properties, allow stopping the product instance as well as pausing reconciliation. properties: reconciliationPaused: @@ -386,7 +386,7 @@ spec: 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) + Consult the [Product image selection documentation](https://docs.stackable.tech/home/26.3/concepts/product_image_selection) for details. properties: custom: @@ -438,7 +438,7 @@ spec: on role level. There is also a second form of config, which can only be configured at role level, the `roleConfig`. You can learn more about this in the - [Roles and role group concept documentation](https://docs.stackable.tech/home/nightly/concepts/roles-and-role-groups). + [Roles and role group concept documentation](https://docs.stackable.tech/home/26.3/concepts/roles-and-role-groups). nullable: true properties: cliOverrides: @@ -457,7 +457,7 @@ spec: podAntiAffinity: null description: |- These configuration settings control - [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + [Pod placement](https://docs.stackable.tech/home/26.3/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) @@ -489,7 +489,7 @@ spec: 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/26.3/concepts/logging). properties: containers: description: Log configuration per container. @@ -1184,7 +1184,7 @@ spec: 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) + [config overrides documentation](https://docs.stackable.tech/home/26.3/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 @@ -1196,7 +1196,7 @@ spec: `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) + [environment variable overrides documentation](https://docs.stackable.tech/home/26.3/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 @@ -1207,7 +1207,7 @@ spec: 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) + Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/26.3/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: @@ -1236,7 +1236,7 @@ spec: [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#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) + [Pod overrides documentation](https://docs.stackable.tech/home/26.3/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true @@ -1262,7 +1262,7 @@ spec: 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). + [allowed Pod disruptions documentation](https://docs.stackable.tech/home/26.3/concepts/operations/pod_disruptions). properties: enabled: default: true @@ -1302,7 +1302,7 @@ spec: podAntiAffinity: null description: |- These configuration settings control - [Pod placement](https://docs.stackable.tech/home/nightly/concepts/operations/pod_placement). + [Pod placement](https://docs.stackable.tech/home/26.3/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) @@ -1334,7 +1334,7 @@ spec: 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/26.3/concepts/logging). properties: containers: description: Log configuration per container. @@ -2029,7 +2029,7 @@ spec: 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) + [config overrides documentation](https://docs.stackable.tech/home/26.3/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 @@ -2041,7 +2041,7 @@ spec: `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) + [environment variable overrides documentation](https://docs.stackable.tech/home/26.3/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 @@ -2052,7 +2052,7 @@ spec: 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) + Please read on the [JVM argument overrides documentation](https://docs.stackable.tech/home/26.3/concepts/overrides#jvm-argument-overrides) for details on the usage. properties: add: @@ -2081,7 +2081,7 @@ spec: [PodTemplateSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#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) + [Pod overrides documentation](https://docs.stackable.tech/home/26.3/concepts/overrides#pod-overrides) for more information. type: object x-kubernetes-preserve-unknown-fields: true @@ -2104,7 +2104,7 @@ spec: List entries are arbitrary YAML objects, which need to be valid Kubernetes objects. - Read the [Object overrides documentation](https://docs.stackable.tech/home/nightly/concepts/overrides#object-overrides) + Read the [Object overrides documentation](https://docs.stackable.tech/home/26.3/concepts/overrides#object-overrides) for more information. items: type: object diff --git a/tests/release.yaml b/tests/release.yaml index 04ee6498..ac01c4f0 100644 --- a/tests/release.yaml +++ b/tests/release.yaml @@ -7,20 +7,20 @@ releases: description: Integration test products: commons: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 secret: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 listener: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 opa: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 zookeeper: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 hdfs: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 hive: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 trino: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1 nifi: - operatorVersion: 0.0.0-dev + operatorVersion: 26.3.0-rc1