From 8697eaa34c3082707c39c59d67da415b46c2a0e1 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Thu, 18 Dec 2025 17:24:11 +0100 Subject: [PATCH 01/21] wip --- modules/streamx-operator/config/pulsar-messaging-config.yaml | 2 +- modules/streamx-operator/main.tf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/streamx-operator/config/pulsar-messaging-config.yaml b/modules/streamx-operator/config/pulsar-messaging-config.yaml index eaa32ad..2b781f1 100644 --- a/modules/streamx-operator/config/pulsar-messaging-config.yaml +++ b/modules/streamx-operator/config/pulsar-messaging-config.yaml @@ -1,4 +1,4 @@ -apiVersion: "streamx.dev/v1alpha1" +apiVersion: "streamx.com/v1alpha1" kind: MessagingClass metadata: name: default diff --git a/modules/streamx-operator/main.tf b/modules/streamx-operator/main.tf index 59a4fb1..6040b39 100644 --- a/modules/streamx-operator/main.tf +++ b/modules/streamx-operator/main.tf @@ -17,7 +17,7 @@ locals { default_atomic = true default_chart_name = "streamx-operator" default_chart_repository = "oci://europe-west1-docker.pkg.dev/streamx-releases/streamx-helm-charts" - default_chart_version = "0.1.1" + default_chart_version = "2.0.1" default_cleanup_on_fail = true default_create_namespace = true default_namespace = "streamx-system" From cde91457f5fe214d89f1ce15c5b57f8f4a847589 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Thu, 18 Dec 2025 17:57:02 +0100 Subject: [PATCH 02/21] Envoy Gateway --- main.tf | 15 ++++++ modules/envoy-gateway/main.tf | 61 +++++++++++++++++++++ modules/envoy-gateway/variables.tf | 85 ++++++++++++++++++++++++++++++ modules/envoy-gateway/versions.tf | 24 +++++++++ variables.tf | 66 ++++++++++++++++++++++- 5 files changed, 250 insertions(+), 1 deletion(-) create mode 100644 modules/envoy-gateway/main.tf create mode 100644 modules/envoy-gateway/variables.tf create mode 100644 modules/envoy-gateway/versions.tf diff --git a/main.tf b/main.tf index 333db2f..69b1946 100644 --- a/main.tf +++ b/main.tf @@ -47,6 +47,21 @@ module "ingress_controller_nginx" { ]) } +module "envoy_gateway" { + count = var.envoy_gateway_enabled ? 1 : 0 + source = "./modules/ingress-controller-nginx" + + chart_name = var.envoy_gateway_chart_name + chart_repository = var.envoy_gateway_chart_repository + chart_version = var.envoy_gateway_chart_version + create_namespace = var.envoy_gateway_create_namespace + namespace = var.envoy_gateway_namespace + release_name = var.envoy_gateway_release_name + settings = var.envoy_gateway_settings + timeout = var.envoy_gateway_timeout + values = var.envoy_gateway_values +} + module "cert_manager" { count = var.cert_manager_enabled ? 1 : 0 source = "./modules/cert-manager" diff --git a/modules/envoy-gateway/main.tf b/modules/envoy-gateway/main.tf new file mode 100644 index 0000000..cdb328b --- /dev/null +++ b/modules/envoy-gateway/main.tf @@ -0,0 +1,61 @@ +# Copyright 2025 Dynamic Solutions Sp. z o.o. sp.k. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +locals { + default_atomic = true + default_chart_name = "oci://docker.io/envoyproxy/gateway-helm" + default_chart_repository = null + default_chart_version = "v1.6.1" + default_cleanup_on_fail = true + default_create_namespace = true + default_namespace = "envoy-gateway-system" + default_release_name = "envoy-gateway" + default_settings = {} + default_timeout = 300 + default_values = [] + + atomic = var.force_defaults_for_null_variables && var.atomic == null ? local.default_atomic : var.atomic + chart_name = var.force_defaults_for_null_variables && var.chart_name == null ? local.default_chart_name : var.chart_name + chart_repository = var.force_defaults_for_null_variables && var.chart_repository == null ? local.default_chart_repository : var.chart_repository + chart_version = var.force_defaults_for_null_variables && var.chart_version == null ? local.default_chart_version : var.chart_version + cleanup_on_fail = var.force_defaults_for_null_variables && var.cleanup_on_fail == null ? local.default_cleanup_on_fail : var.cleanup_on_fail + create_namespace = var.force_defaults_for_null_variables && var.create_namespace == null ? local.default_create_namespace : var.create_namespace + namespace = var.force_defaults_for_null_variables && var.namespace == null ? local.default_namespace : var.namespace + release_name = var.force_defaults_for_null_variables && var.release_name == null ? local.default_release_name : var.release_name + settings = var.force_defaults_for_null_variables && var.settings == null ? local.default_settings : var.settings + timeout = var.force_defaults_for_null_variables && var.timeout == null ? local.default_timeout : var.timeout + values = var.force_defaults_for_null_variables && var.values == null ? local.default_values : var.values +} + +resource "helm_release" "this" { + atomic = local.atomic + chart = local.chart_name + cleanup_on_fail = local.cleanup_on_fail + create_namespace = local.create_namespace + name = local.release_name + namespace = local.namespace + repository = local.chart_repository + timeout = local.timeout + version = local.chart_version + values = local.values + + dynamic "set" { + for_each = local.settings + content { + name = set.key + value = set.value + } + } +} diff --git a/modules/envoy-gateway/variables.tf b/modules/envoy-gateway/variables.tf new file mode 100644 index 0000000..8cc37f5 --- /dev/null +++ b/modules/envoy-gateway/variables.tf @@ -0,0 +1,85 @@ +# Copyright 2025 Dynamic Solutions Sp. z o.o. sp.k. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +variable "force_defaults_for_null_variables" { + default = true + description = "Enables forcing default variable values when the variable value passed to the module is null." + type = bool +} + +variable "atomic" { + default = true + description = "Purge the chart on a failed installation." + type = bool +} + +variable "chart_name" { + default = "cert-manager" + description = "The name of the Helm chart to install" + type = string +} + +variable "chart_repository" { + default = "https://charts.jetstack.io" + description = "The repository containing the Helm chart to install" + type = string +} + +variable "chart_version" { + default = "v1.14.5" + description = "The version of the Helm chart to install" + type = string +} + +variable "cleanup_on_fail" { + default = true + description = "Allow deletion of new resources created in this upgrade when upgrade fails" + type = bool +} + +variable "create_namespace" { + default = true + description = "Create a namespace for the deployment. Defaults to \"true\"." + type = bool +} + +variable "namespace" { + default = "cert-manager" + description = "The namespace used for the deployment" + type = string +} + +variable "release_name" { + default = "cert-manager" + description = "The name of the helm release" + type = string +} + +variable "settings" { + default = {} + description = "Settings which will be passed to the Helm chart values" + type = map(any) +} + +variable "timeout" { + default = 300 + description = "Time in seconds to wait for any individual kubernetes operation" + type = number +} + +variable "values" { + default = [] + description = "A list of values in raw YAML to be applied to the helm release. Merges with the settings input, can also be used with the `file()` function, i.e. `file(\"my/values.yaml\")`." +} diff --git a/modules/envoy-gateway/versions.tf b/modules/envoy-gateway/versions.tf new file mode 100644 index 0000000..7e22a7e --- /dev/null +++ b/modules/envoy-gateway/versions.tf @@ -0,0 +1,24 @@ +# Copyright 2025 Dynamic Solutions Sp. z o.o. sp.k. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +terraform { + required_version = ">= 1.0.0" + required_providers { + helm = { + source = "hashicorp/helm" + version = ">= 2.17.0, < 3.0.0" + } + } +} diff --git a/variables.tf b/variables.tf index 7322791..48be4fc 100644 --- a/variables.tf +++ b/variables.tf @@ -15,7 +15,7 @@ ### Enable/Disable sub-modules variable "ingress_controller_apisix_enabled" { - default = true + default = false description = "Enables APISIX Ingress Controller." type = bool } @@ -26,6 +26,12 @@ variable "ingress_controller_nginx_enabled" { type = bool } +variable "envoy_gateway_enabled" { + default = false + description = "Enables Envoy Gateway." + type = bool +} + variable "cert_manager_enabled" { default = true description = "Enables Cert Manager." @@ -130,6 +136,19 @@ variable "ingress_controller_apisix_namespace" { type = string } +### Envoy Gateway +variable "envoy_gateway_create_namespace" { + default = null + description = "Create a namespace for the deployment." + type = bool +} + +variable "envoy_gateway_namespace" { + default = null + description = "The namespace used for the deployment" + type = string +} + ### Cert Manager variable "cert_manager_create_namespace" { default = null @@ -376,6 +395,51 @@ variable "ingress_controller_nginx_values" { type = list(string) } +####### +### Envoy Gateway +####### +variable "envoy_gateway_chart_name" { + default = null + description = "The name of the Helm chart to install" + type = string +} + +variable "envoy_gateway_chart_repository" { + default = null + description = "The repository containing the Helm chart to install." + type = string +} + +variable "envoy_gateway_chart_version" { + default = null + description = "The version of the Helm chart to install." + type = string +} + +variable "envoy_gateway_release_name" { + default = null + description = "The name of the helm release." + type = string +} + +variable "envoy_gateway_settings" { + default = null + description = "Additional key value settings which will be passed to the Helm chart values, e.g. { \"namespace\" = \"kube-system\" }." + type = map(any) +} + +variable "envoy_gateway_timeout" { + default = null + description = "Time in seconds to wait for any individual kubernetes operation" + type = number +} + +variable "envoy_gateway_values" { + default = null + description = "A list of values in raw YAML to be applied to the helm release. Overrides default values from [default-configs](./default-configs). Merges with the settings input, can also be used with the `file()` function, i.e. `file(\"my/values.yaml\")`." + type = list(string) +} + ####### ### Cert manager ####### From d36fe4c8771e7f5fdc0907b8e0a81876688f782f Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Thu, 18 Dec 2025 18:15:39 +0100 Subject: [PATCH 03/21] streamx-operator 2.0.2-jvm --- main.tf | 12 ++++++++++++ variables.tf | 25 +++++++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/main.tf b/main.tf index 69b1946..f3f24d3 100644 --- a/main.tf +++ b/main.tf @@ -453,6 +453,9 @@ module "streamx_operator" { imagePullSecrets = local.streamx_operator_image_pull_secret_name == null ? [] : [ { name = local.streamx_operator_image_pull_secret_name } ] + image = { + tag = "2.0.2-jvm" + } } mesh = { monitoring = { @@ -461,6 +464,15 @@ module "streamx_operator" { endpoint = var.streamx_operator_monitoring_traces_endpoint } } + defaultGateway = { + name = var.streamx_operator_default_gateway_name + namespace = var.streamx_operator_default_gateway_namespace == null ? local.streamx_operator_namespace : var.streamx_operator_default_gateway_namespace + controllerName = var.streamx_operator_default_gateway_controller_name + issuer = { + name : var.streamx_operator_default_gateway_cert_manager_issuer_name + isClusterIssuer : var.streamx_operator_default_gateway_cert_manager_issuer_is_cluster_issuer + } + } } federation = { # Disable Mesh Federation by default diff --git a/variables.tf b/variables.tf index 48be4fc..e4926d6 100644 --- a/variables.tf +++ b/variables.tf @@ -1043,6 +1043,31 @@ variable "streamx_operator_monitoring_traces_endpoint" { type = string } +variable "streamx_operator_default_gateway_name" { + default = "streamx-default" + type = string +} + +variable "streamx_operator_default_gateway_namespace" { + default = null + type = string +} + +variable "streamx_operator_default_gateway_controller_name" { + default = null + type = string +} + +variable "streamx_operator_default_gateway_cert_manager_issuer_name" { + default = null + type = string +} + +variable "streamx_operator_default_gateway_cert_manager_issuer_is_cluster_issuer" { + default = null + type = bool +} + ####### ### StreamX Operator image pull secret ####### From adea8507483414ed046987ca4475620bf6135f94 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 10:36:34 +0100 Subject: [PATCH 04/21] streamx-operator 2.0.2-jvm --- main.tf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/main.tf b/main.tf index f3f24d3..b8b42e9 100644 --- a/main.tf +++ b/main.tf @@ -469,8 +469,8 @@ module "streamx_operator" { namespace = var.streamx_operator_default_gateway_namespace == null ? local.streamx_operator_namespace : var.streamx_operator_default_gateway_namespace controllerName = var.streamx_operator_default_gateway_controller_name issuer = { - name : var.streamx_operator_default_gateway_cert_manager_issuer_name - isClusterIssuer : var.streamx_operator_default_gateway_cert_manager_issuer_is_cluster_issuer + name = var.streamx_operator_default_gateway_cert_manager_issuer_name + isClusterIssuer = var.streamx_operator_default_gateway_cert_manager_issuer_is_cluster_issuer } } } From 7c266c4bb6bed4690ff0c5ca06d54ad65a75fdac Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 11:10:14 +0100 Subject: [PATCH 05/21] streamx-operator 2.0.2-jvm --- main.tf | 2 +- modules/envoy-gateway/main.tf | 11 +++++++++++ modules/envoy-gateway/outputs.tf | 23 +++++++++++++++++++++++ outputs.tf | 4 ++-- 4 files changed, 37 insertions(+), 3 deletions(-) create mode 100644 modules/envoy-gateway/outputs.tf diff --git a/main.tf b/main.tf index b8b42e9..8f8e8fc 100644 --- a/main.tf +++ b/main.tf @@ -49,7 +49,7 @@ module "ingress_controller_nginx" { module "envoy_gateway" { count = var.envoy_gateway_enabled ? 1 : 0 - source = "./modules/ingress-controller-nginx" + source = "./modules/envoy-gateway" chart_name = var.envoy_gateway_chart_name chart_repository = var.envoy_gateway_chart_repository diff --git a/modules/envoy-gateway/main.tf b/modules/envoy-gateway/main.tf index cdb328b..a0cee50 100644 --- a/modules/envoy-gateway/main.tf +++ b/modules/envoy-gateway/main.tf @@ -59,3 +59,14 @@ resource "helm_release" "this" { } } } + +data "kubernetes_service" "gateway" { + metadata { + name = "envoy-gateway" + namespace = var.namespace + } + + depends_on = [ + helm_release.this + ] +} diff --git a/modules/envoy-gateway/outputs.tf b/modules/envoy-gateway/outputs.tf new file mode 100644 index 0000000..49d11d6 --- /dev/null +++ b/modules/envoy-gateway/outputs.tf @@ -0,0 +1,23 @@ +# Copyright 2025 Dynamic Solutions Sp. z o.o. sp.k. + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +locals { + load_balancer_ip = try(data.kubernetes_service.gateway.status.0.addresses.0.value, null) +} + +output "load_balancer_ip" { + description = "IP of the loadbalancer" + value = local.load_balancer_ip +} diff --git a/outputs.tf b/outputs.tf index 9c44cb0..0fe47b6 100644 --- a/outputs.tf +++ b/outputs.tf @@ -13,9 +13,9 @@ # limitations under the License. # -output "loadbalancer_ip" { +output "load_balancer_ip" { description = "K8s cluster Load Balancer IP" - value = length(module.ingress_controller_nginx) > 0 ? module.ingress_controller_nginx.0.ingress_ip : length(module.ingress_controller_apisix) > 0 ? module.ingress_controller_apisix.0.ingress_ip : null + value = coalesce(try(module.ingress_controller_nginx.0.ingress_ip, null), try( module.ingress_controller_apisix.0.ingress_ip, null), try( module.envoy_gateway.0.load_balancer_ip, null)) } output "cert_manager_lets_encrypt_issuer_ingress_annotations" { From e4a677dae01fd6828a2b87be7f72519b663db00e Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 11:16:20 +0100 Subject: [PATCH 06/21] streamx-operator 2.0.2-jvm --- modules/envoy-gateway/outputs.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/envoy-gateway/outputs.tf b/modules/envoy-gateway/outputs.tf index 49d11d6..a9a89b5 100644 --- a/modules/envoy-gateway/outputs.tf +++ b/modules/envoy-gateway/outputs.tf @@ -14,7 +14,7 @@ # locals { - load_balancer_ip = try(data.kubernetes_service.gateway.status.0.addresses.0.value, null) + load_balancer_ip = try(data.kubernetes_service.gateway.status.0.load_balancer.0.ingress.0.ip, null) } output "load_balancer_ip" { From c97481e93632d7f06426e512f82d65b7c5ef53ff Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 11:41:59 +0100 Subject: [PATCH 07/21] streamx-operator 2.0.2-jvm --- outputs.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/outputs.tf b/outputs.tf index 0fe47b6..bbbc89c 100644 --- a/outputs.tf +++ b/outputs.tf @@ -15,7 +15,7 @@ output "load_balancer_ip" { description = "K8s cluster Load Balancer IP" - value = coalesce(try(module.ingress_controller_nginx.0.ingress_ip, null), try( module.ingress_controller_apisix.0.ingress_ip, null), try( module.envoy_gateway.0.load_balancer_ip, null)) + value = try(coalesce(try(module.ingress_controller_nginx.0.ingress_ip, null), try( module.ingress_controller_apisix.0.ingress_ip, null), try( module.envoy_gateway.0.load_balancer_ip, null)), null) } output "cert_manager_lets_encrypt_issuer_ingress_annotations" { From 1154aea963c80e4e00b65bf5851ca1bbdef034f7 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 12:07:02 +0100 Subject: [PATCH 08/21] streamx-operator 2.0.2-jvm --- modules/envoy-gateway/outputs.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/envoy-gateway/outputs.tf b/modules/envoy-gateway/outputs.tf index a9a89b5..5fc9c26 100644 --- a/modules/envoy-gateway/outputs.tf +++ b/modules/envoy-gateway/outputs.tf @@ -14,7 +14,7 @@ # locals { - load_balancer_ip = try(data.kubernetes_service.gateway.status.0.load_balancer.0.ingress.0.ip, null) + load_balancer_ip = data.kubernetes_service.gateway.status.0.load_balancer.0.ingress.0.ip } output "load_balancer_ip" { From 2708f25be5cb35999b32ac396f115db73afba4a0 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 13:04:07 +0100 Subject: [PATCH 09/21] streamx-operator 2.0.2-jvm --- modules/envoy-gateway/main.tf | 2 +- modules/envoy-gateway/outputs.tf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/envoy-gateway/main.tf b/modules/envoy-gateway/main.tf index a0cee50..7f1df31 100644 --- a/modules/envoy-gateway/main.tf +++ b/modules/envoy-gateway/main.tf @@ -60,7 +60,7 @@ resource "helm_release" "this" { } } -data "kubernetes_service" "gateway" { +data "kubernetes_service_v1" "gateway" { metadata { name = "envoy-gateway" namespace = var.namespace diff --git a/modules/envoy-gateway/outputs.tf b/modules/envoy-gateway/outputs.tf index 5fc9c26..3013e85 100644 --- a/modules/envoy-gateway/outputs.tf +++ b/modules/envoy-gateway/outputs.tf @@ -18,6 +18,6 @@ locals { } output "load_balancer_ip" { - description = "IP of the loadbalancer" + description = "IP of the Load Balancer" value = local.load_balancer_ip } From 04c89ee9733106cdb083e520417fdd9945d25d96 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 13:05:47 +0100 Subject: [PATCH 10/21] streamx-operator 2.0.2-jvm --- modules/envoy-gateway/outputs.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/envoy-gateway/outputs.tf b/modules/envoy-gateway/outputs.tf index 3013e85..fc6d23f 100644 --- a/modules/envoy-gateway/outputs.tf +++ b/modules/envoy-gateway/outputs.tf @@ -14,7 +14,7 @@ # locals { - load_balancer_ip = data.kubernetes_service.gateway.status.0.load_balancer.0.ingress.0.ip + load_balancer_ip = data.kubernetes_service_v1.gateway.status.0.load_balancer.0.ingress.0.ip } output "load_balancer_ip" { From 25455ab0647752d1304465361b3bbf5ac83a8d31 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 13:22:46 +0100 Subject: [PATCH 11/21] streamx-operator 2.0.2-jvm --- modules/envoy-gateway/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/envoy-gateway/main.tf b/modules/envoy-gateway/main.tf index 7f1df31..b5717bf 100644 --- a/modules/envoy-gateway/main.tf +++ b/modules/envoy-gateway/main.tf @@ -63,7 +63,7 @@ resource "helm_release" "this" { data "kubernetes_service_v1" "gateway" { metadata { name = "envoy-gateway" - namespace = var.namespace + namespace = local.namespace } depends_on = [ From 5de688f94d9629107fef3c2d567d8cf0dc732297 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 13:55:43 +0100 Subject: [PATCH 12/21] streamx-operator 2.0.2-jvm --- modules/envoy-gateway/gateway-class.yaml | 6 ++++++ modules/envoy-gateway/main.tf | 7 +++++++ modules/envoy-gateway/versions.tf | 4 ++++ 3 files changed, 17 insertions(+) create mode 100644 modules/envoy-gateway/gateway-class.yaml diff --git a/modules/envoy-gateway/gateway-class.yaml b/modules/envoy-gateway/gateway-class.yaml new file mode 100644 index 0000000..21ad2ef --- /dev/null +++ b/modules/envoy-gateway/gateway-class.yaml @@ -0,0 +1,6 @@ +apiVersion: gateway.networking.k8s.io/v1 +kind: GatewayClass +metadata: + name: envoy +spec: + controllerName: gateway.envoyproxy.io/gatewayclass-controller \ No newline at end of file diff --git a/modules/envoy-gateway/main.tf b/modules/envoy-gateway/main.tf index b5717bf..138d74a 100644 --- a/modules/envoy-gateway/main.tf +++ b/modules/envoy-gateway/main.tf @@ -60,6 +60,13 @@ resource "helm_release" "this" { } } +resource "kubectl_manifest" "gateway_class" { + yaml_body = file("${path.module}/gateway-class.yaml") + override_namespace = local.namespace + + depends_on = [helm_release.this] +} + data "kubernetes_service_v1" "gateway" { metadata { name = "envoy-gateway" diff --git a/modules/envoy-gateway/versions.tf b/modules/envoy-gateway/versions.tf index 7e22a7e..aa2e27e 100644 --- a/modules/envoy-gateway/versions.tf +++ b/modules/envoy-gateway/versions.tf @@ -20,5 +20,9 @@ terraform { source = "hashicorp/helm" version = ">= 2.17.0, < 3.0.0" } + kubectl = { + source = "gavinbunney/kubectl" + version = ">= 1.14.0" + } } } From 09c2ff3c42fd3b29f3d549bd6e932be401dcf9cc Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Fri, 19 Dec 2025 16:15:57 +0100 Subject: [PATCH 13/21] streamx-operator 2.0.2-jvm --- README.md | 35 +++++++++++-- modules/envoy-gateway/README.md | 52 +++++++++++++++++++ modules/monitoring-kaap-pod-monitor/README.md | 1 + .../README.md | 1 + .../README.md | 2 +- .../README.md | 2 +- .../README.md | 1 + .../monitoring-streamx-pod-monitor/README.md | 1 + modules/pulsar-resources-operator/README.md | 47 +++++++++++++++++ modules/streamx-operator/README.md | 11 ++-- 10 files changed, 143 insertions(+), 10 deletions(-) create mode 100644 modules/envoy-gateway/README.md create mode 100644 modules/pulsar-resources-operator/README.md diff --git a/README.md b/README.md index 78a327c..80b8b60 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,7 @@ |------|--------|---------| | [cert\_manager](#module\_cert\_manager) | ./modules/cert-manager | n/a | | [cert\_manager\_lets\_encrypt\_issuer](#module\_cert\_manager\_lets\_encrypt\_issuer) | ./modules/cert-manager-issuer-lets-encrypt | n/a | +| [envoy\_gateway](#module\_envoy\_gateway) | ./modules/envoy-gateway | n/a | | [grafana\_loki\_datasource](#module\_grafana\_loki\_datasource) | ./modules/monitoring-grafana-loki-datasource | n/a | | [grafana\_tempo\_datasource](#module\_grafana\_tempo\_datasource) | ./modules/monitoring-grafana-tempo-datasource | n/a | | [ingress\_controller\_apisix](#module\_ingress\_controller\_apisix) | ./modules/ingress-controller-apisix | n/a | @@ -49,6 +50,7 @@ | [opentelemetry\_operator](#module\_opentelemetry\_operator) | ./modules/monitoring-opentelemetry-operator | n/a | | [prometheus\_stack](#module\_prometheus\_stack) | ./modules/monitoring-prometheus-stack | n/a | | [pulsar\_kaap](#module\_pulsar\_kaap) | ./modules/pulsar-kaap | n/a | +| [pulsar\_resources\_operator](#module\_pulsar\_resources\_operator) | ./modules/pulsar-resources-operator | n/a | | [streamx\_dashboards](#module\_streamx\_dashboards) | ./modules/monitoring-streamx-grafana-dashboards | n/a | | [streamx\_operator](#module\_streamx\_operator) | ./modules/streamx-operator | n/a | | [streamx\_operator\_image\_pull\_secret](#module\_streamx\_operator\_image\_pull\_secret) | ./modules/docker-config-secret | n/a | @@ -90,11 +92,21 @@ | [cert\_manager\_settings](#input\_cert\_manager\_settings) | Additional key value settings which will be passed to the Helm chart values, e.g. { "namespace" = "kube-system" }. | `map(any)` | `null` | no | | [cert\_manager\_timeout](#input\_cert\_manager\_timeout) | Time in seconds to wait for any individual kubernetes operation | `number` | `null` | no | | [cert\_manager\_values](#input\_cert\_manager\_values) | A list of values in raw YAML to be applied to the helm release. Overrides default values from [default-configs](./default-configs). Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list(string)` | `null` | no | +| [envoy\_gateway\_chart\_name](#input\_envoy\_gateway\_chart\_name) | The name of the Helm chart to install | `string` | `null` | no | +| [envoy\_gateway\_chart\_repository](#input\_envoy\_gateway\_chart\_repository) | The repository containing the Helm chart to install. | `string` | `null` | no | +| [envoy\_gateway\_chart\_version](#input\_envoy\_gateway\_chart\_version) | The version of the Helm chart to install. | `string` | `null` | no | +| [envoy\_gateway\_create\_namespace](#input\_envoy\_gateway\_create\_namespace) | Create a namespace for the deployment. | `bool` | `null` | no | +| [envoy\_gateway\_enabled](#input\_envoy\_gateway\_enabled) | Enables Envoy Gateway. | `bool` | `false` | no | +| [envoy\_gateway\_namespace](#input\_envoy\_gateway\_namespace) | The namespace used for the deployment | `string` | `null` | no | +| [envoy\_gateway\_release\_name](#input\_envoy\_gateway\_release\_name) | The name of the helm release. | `string` | `null` | no | +| [envoy\_gateway\_settings](#input\_envoy\_gateway\_settings) | Additional key value settings which will be passed to the Helm chart values, e.g. { "namespace" = "kube-system" }. | `map(any)` | `null` | no | +| [envoy\_gateway\_timeout](#input\_envoy\_gateway\_timeout) | Time in seconds to wait for any individual kubernetes operation | `number` | `null` | no | +| [envoy\_gateway\_values](#input\_envoy\_gateway\_values) | A list of values in raw YAML to be applied to the helm release. Overrides default values from [default-configs](./default-configs). Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list(string)` | `null` | no | | [ingress\_controller\_apisix\_chart\_name](#input\_ingress\_controller\_apisix\_chart\_name) | The name of the Helm chart to install | `string` | `null` | no | | [ingress\_controller\_apisix\_chart\_repository](#input\_ingress\_controller\_apisix\_chart\_repository) | The repository containing the Helm chart to install. | `string` | `null` | no | | [ingress\_controller\_apisix\_chart\_version](#input\_ingress\_controller\_apisix\_chart\_version) | The version of the Helm chart to install. | `string` | `null` | no | | [ingress\_controller\_apisix\_create\_namespace](#input\_ingress\_controller\_apisix\_create\_namespace) | Create a namespace for the deployment. | `bool` | `null` | no | -| [ingress\_controller\_apisix\_enabled](#input\_ingress\_controller\_apisix\_enabled) | Enables APISIX Ingress Controller. | `bool` | `true` | no | +| [ingress\_controller\_apisix\_enabled](#input\_ingress\_controller\_apisix\_enabled) | Enables APISIX Ingress Controller. | `bool` | `false` | no | | [ingress\_controller\_apisix\_namespace](#input\_ingress\_controller\_apisix\_namespace) | The namespace used for the deployment | `string` | `null` | no | | [ingress\_controller\_apisix\_release\_name](#input\_ingress\_controller\_apisix\_release\_name) | The name of the helm release. | `string` | `null` | no | | [ingress\_controller\_apisix\_settings](#input\_ingress\_controller\_apisix\_settings) | Additional key value settings which will be passed to the Helm chart values, e.g. { "namespace" = "kube-system" }. | `map(any)` | `null` | no | @@ -184,12 +196,29 @@ | [pulsar\_kaap\_settings](#input\_pulsar\_kaap\_settings) | Additional key value settings which will be passed to the Helm chart values, e.g. { "namespace" = "kube-system" }. | `map(any)` | `null` | no | | [pulsar\_kaap\_timeout](#input\_pulsar\_kaap\_timeout) | Time in seconds to wait for any individual kubernetes operation | `number` | `null` | no | | [pulsar\_kaap\_values](#input\_pulsar\_kaap\_values) | A list of values in raw YAML to be applied to the helm release. Overrides default values from [default-configs](./default-configs). Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list(string)` | `null` | no | +| [pulsar\_resources\_operator\_chart\_name](#input\_pulsar\_resources\_operator\_chart\_name) | The name of the Helm chart to install | `string` | `null` | no | +| [pulsar\_resources\_operator\_chart\_repository](#input\_pulsar\_resources\_operator\_chart\_repository) | The repository containing the Helm chart to install. | `string` | `null` | no | +| [pulsar\_resources\_operator\_chart\_repository\_password](#input\_pulsar\_resources\_operator\_chart\_repository\_password) | The password used for the repository authentication. | `string` | `null` | no | +| [pulsar\_resources\_operator\_chart\_repository\_username](#input\_pulsar\_resources\_operator\_chart\_repository\_username) | The username used for the repository authentication. | `string` | `null` | no | +| [pulsar\_resources\_operator\_chart\_version](#input\_pulsar\_resources\_operator\_chart\_version) | The version of the Helm chart to install. | `string` | `null` | no | +| [pulsar\_resources\_operator\_create\_namespace](#input\_pulsar\_resources\_operator\_create\_namespace) | Create a namespace for the deployment. | `bool` | `true` | no | +| [pulsar\_resources\_operator\_enabled](#input\_pulsar\_resources\_operator\_enabled) | Enables Pulsar Resources Operator. | `bool` | `true` | no | +| [pulsar\_resources\_operator\_namespace](#input\_pulsar\_resources\_operator\_namespace) | The namespace used for the deployment | `string` | `"pulsar-resources-operator"` | no | +| [pulsar\_resources\_operator\_release\_name](#input\_pulsar\_resources\_operator\_release\_name) | The name of the helm release. | `string` | `null` | no | +| [pulsar\_resources\_operator\_settings](#input\_pulsar\_resources\_operator\_settings) | Additional key value settings which will be passed to the Helm chart values, e.g. { "namespace" = "kube-system" }. | `map(any)` | `null` | no | +| [pulsar\_resources\_operator\_timeout](#input\_pulsar\_resources\_operator\_timeout) | Time in seconds to wait for any individual kubernetes operation. | `number` | `null` | no | +| [pulsar\_resources\_operator\_values](#input\_pulsar\_resources\_operator\_values) | A list of values in raw YAML to be applied to the helm release. Overrides default composed values. Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list(string)` | `null` | no | | [streamx\_operator\_chart\_name](#input\_streamx\_operator\_chart\_name) | The name of the Helm chart to install | `string` | `null` | no | | [streamx\_operator\_chart\_repository](#input\_streamx\_operator\_chart\_repository) | The repository containing the Helm chart to install. | `string` | `null` | no | | [streamx\_operator\_chart\_repository\_password](#input\_streamx\_operator\_chart\_repository\_password) | The password used for the repository authentication. | `string` | `null` | no | | [streamx\_operator\_chart\_repository\_username](#input\_streamx\_operator\_chart\_repository\_username) | The username used for the repository authentication. | `string` | `null` | no | | [streamx\_operator\_chart\_version](#input\_streamx\_operator\_chart\_version) | The version of the Helm chart to install. | `string` | `null` | no | | [streamx\_operator\_create\_namespace](#input\_streamx\_operator\_create\_namespace) | Create a namespace for the deployment. | `bool` | `true` | no | +| [streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_is\_cluster\_issuer](#input\_streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_is\_cluster\_issuer) | n/a | `bool` | `null` | no | +| [streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_name](#input\_streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_name) | n/a | `string` | `null` | no | +| [streamx\_operator\_default\_gateway\_controller\_name](#input\_streamx\_operator\_default\_gateway\_controller\_name) | n/a | `string` | `null` | no | +| [streamx\_operator\_default\_gateway\_name](#input\_streamx\_operator\_default\_gateway\_name) | n/a | `string` | `"streamx-default"` | no | +| [streamx\_operator\_default\_gateway\_namespace](#input\_streamx\_operator\_default\_gateway\_namespace) | n/a | `string` | `null` | no | | [streamx\_operator\_enabled](#input\_streamx\_operator\_enabled) | Enables StreamX Operator. | `bool` | `true` | no | | [streamx\_operator\_image\_pull\_secret\_enabled](#input\_streamx\_operator\_image\_pull\_secret\_enabled) | Enables StreamX Operator Image Pull Secret. | `bool` | `true` | no | | [streamx\_operator\_image\_pull\_secret\_name](#input\_streamx\_operator\_image\_pull\_secret\_name) | StreamX Operator image pull secret name. | `string` | `"sx-operator-image-pull-secret"` | no | @@ -201,7 +230,7 @@ | [streamx\_operator\_messaging\_pulsar\_client\_service\_url](#input\_streamx\_operator\_messaging\_pulsar\_client\_service\_url) | Pulsar client service URL passed to StreamX Operator. If null and KAAP enabled then KAAP default URL is used. | `string` | `null` | no | | [streamx\_operator\_monitoring\_traces\_endpoint](#input\_streamx\_operator\_monitoring\_traces\_endpoint) | Traces collector URL | `string` | `null` | no | | [streamx\_operator\_monitoring\_traces\_mode](#input\_streamx\_operator\_monitoring\_traces\_mode) | Traces monitoring mode for StreamX Meshes deployed by StreamX Operator | `string` | `null` | no | -| [streamx\_operator\_namespace](#input\_streamx\_operator\_namespace) | The namespace used for the deployment | `string` | `"streamx-operator"` | no | +| [streamx\_operator\_namespace](#input\_streamx\_operator\_namespace) | The namespace used for the deployment | `string` | `"streamx-system"` | no | | [streamx\_operator\_release\_name](#input\_streamx\_operator\_release\_name) | The name of the helm release. | `string` | `null` | no | | [streamx\_operator\_settings](#input\_streamx\_operator\_settings) | Additional key value settings which will be passed to the Helm chart values, e.g. { "namespace" = "kube-system" }. | `map(any)` | `null` | no | | [streamx\_operator\_timeout](#input\_streamx\_operator\_timeout) | Time in seconds to wait for any individual kubernetes operation. | `number` | `null` | no | @@ -222,5 +251,5 @@ | Name | Description | |------|-------------| | [cert\_manager\_lets\_encrypt\_issuer\_ingress\_annotations](#output\_cert\_manager\_lets\_encrypt\_issuer\_ingress\_annotations) | Ingress annotations with Cert Manager Let's Encrypt issuer configuration | -| [loadbalancer\_ip](#output\_loadbalancer\_ip) | K8s cluster Load Balancer IP | +| [load\_balancer\_ip](#output\_load\_balancer\_ip) | K8s cluster Load Balancer IP | diff --git a/modules/envoy-gateway/README.md b/modules/envoy-gateway/README.md new file mode 100644 index 0000000..2da7f29 --- /dev/null +++ b/modules/envoy-gateway/README.md @@ -0,0 +1,52 @@ + +## Requirements + +| Name | Version | +|------|---------| +| [terraform](#requirement\_terraform) | >= 1.0.0 | +| [helm](#requirement\_helm) | >= 2.17.0, < 3.0.0 | +| [kubectl](#requirement\_kubectl) | >= 1.14.0 | + +## Providers + +| Name | Version | +|------|---------| +| [helm](#provider\_helm) | >= 2.17.0, < 3.0.0 | +| [kubectl](#provider\_kubectl) | >= 1.14.0 | +| [kubernetes](#provider\_kubernetes) | n/a | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [helm_release.this](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource | +| [kubectl_manifest.gateway_class](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | +| [kubernetes_service_v1.gateway](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/data-sources/service_v1) | data source | + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| [atomic](#input\_atomic) | Purge the chart on a failed installation. | `bool` | `true` | no | +| [chart\_name](#input\_chart\_name) | The name of the Helm chart to install | `string` | `"cert-manager"` | no | +| [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"https://charts.jetstack.io"` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"v1.14.5"` | no | +| [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | +| [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | +| [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | +| [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"cert-manager"` | no | +| [release\_name](#input\_release\_name) | The name of the helm release | `string` | `"cert-manager"` | no | +| [settings](#input\_settings) | Settings which will be passed to the Helm chart values | `map(any)` | `{}` | no | +| [timeout](#input\_timeout) | Time in seconds to wait for any individual kubernetes operation | `number` | `300` | no | +| [values](#input\_values) | A list of values in raw YAML to be applied to the helm release. Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list` | `[]` | no | + +## Outputs + +| Name | Description | +|------|-------------| +| [load\_balancer\_ip](#output\_load\_balancer\_ip) | IP of the Load Balancer | + \ No newline at end of file diff --git a/modules/monitoring-kaap-pod-monitor/README.md b/modules/monitoring-kaap-pod-monitor/README.md index ae38cfc..211117e 100644 --- a/modules/monitoring-kaap-pod-monitor/README.md +++ b/modules/monitoring-kaap-pod-monitor/README.md @@ -23,6 +23,7 @@ No modules. | [kubectl_manifest.kaap_bookkeeper_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | | [kubectl_manifest.kaap_broker_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | | [kubectl_manifest.kaap_operator_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | +| [kubectl_manifest.kaap_proxy_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | | [kubectl_manifest.kaap_zookeeper_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | ## Inputs diff --git a/modules/monitoring-loki-grafana-dashboards/README.md b/modules/monitoring-loki-grafana-dashboards/README.md index 11f1cce..346bd53 100644 --- a/modules/monitoring-loki-grafana-dashboards/README.md +++ b/modules/monitoring-loki-grafana-dashboards/README.md @@ -27,6 +27,7 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | +| [multicluster](#input\_multicluster) | If false Cluster variable in dashboards is hidden | `bool` | `false` | no | | [namespace](#input\_namespace) | The namespace used for Grafana deployment | `string` | `"prometheus-stack"` | no | ## Outputs diff --git a/modules/monitoring-opentelemetry-collector/README.md b/modules/monitoring-opentelemetry-collector/README.md index 8f71457..3f1126b 100644 --- a/modules/monitoring-opentelemetry-collector/README.md +++ b/modules/monitoring-opentelemetry-collector/README.md @@ -29,7 +29,7 @@ No modules. | [atomic](#input\_atomic) | Purge the chart on a failed installation. Default's to "true". | `bool` | `true` | no | | [chart\_name](#input\_chart\_name) | The name of the Helm chart to install | `string` | `"opentelemetry-collector"` | no | | [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"https://open-telemetry.github.io/opentelemetry-helm-charts"` | no | -| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.117.0"` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.139.0"` | no | | [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | | [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | diff --git a/modules/monitoring-opentelemetry-operator/README.md b/modules/monitoring-opentelemetry-operator/README.md index 89b0935..7280552 100644 --- a/modules/monitoring-opentelemetry-operator/README.md +++ b/modules/monitoring-opentelemetry-operator/README.md @@ -29,7 +29,7 @@ No modules. | [atomic](#input\_atomic) | Purge the chart on a failed installation. Default's to "true". | `bool` | `true` | no | | [chart\_name](#input\_chart\_name) | The name of the Helm chart to install | `string` | `"opentelemetry-operator"` | no | | [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"https://open-telemetry.github.io/opentelemetry-helm-charts"` | no | -| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.80.2"` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.99.0"` | no | | [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | | [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | diff --git a/modules/monitoring-streamx-grafana-dashboards/README.md b/modules/monitoring-streamx-grafana-dashboards/README.md index b67026b..496f061 100644 --- a/modules/monitoring-streamx-grafana-dashboards/README.md +++ b/modules/monitoring-streamx-grafana-dashboards/README.md @@ -27,6 +27,7 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | +| [multicluster](#input\_multicluster) | If false Cluster variable in dashboards is hidden | `bool` | `false` | no | | [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"prometheus-stack"` | no | ## Outputs diff --git a/modules/monitoring-streamx-pod-monitor/README.md b/modules/monitoring-streamx-pod-monitor/README.md index 3c9e82f..9b04b10 100644 --- a/modules/monitoring-streamx-pod-monitor/README.md +++ b/modules/monitoring-streamx-pod-monitor/README.md @@ -20,6 +20,7 @@ No modules. | Name | Type | |------|------| +| [kubectl_manifest.streamx_operator_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | | [kubectl_manifest.streamx_pod_monitor](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | ## Inputs diff --git a/modules/pulsar-resources-operator/README.md b/modules/pulsar-resources-operator/README.md new file mode 100644 index 0000000..63c5168 --- /dev/null +++ b/modules/pulsar-resources-operator/README.md @@ -0,0 +1,47 @@ + +## Requirements + +| Name | Version | +|------|---------| +| [terraform](#requirement\_terraform) | >= 1.0.0 | +| [helm](#requirement\_helm) | >= 2.17.0, < 3.0.0 | + +## Providers + +| Name | Version | +|------|---------| +| [helm](#provider\_helm) | >= 2.17.0, < 3.0.0 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [helm_release.pulsar_resources_operator](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource | + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| [atomic](#input\_atomic) | Purge the chart on a failed installation. Default's to "true". | `bool` | `true` | no | +| [chart\_name](#input\_chart\_name) | The name of the Helm chart to install | `string` | `"pulsar-resources-operator"` | no | +| [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"https://charts.streamnative.io"` | no | +| [chart\_repository\_password](#input\_chart\_repository\_password) | The password used for the repository authentication | `string` | `null` | no | +| [chart\_repository\_username](#input\_chart\_repository\_username) | The username used for the repository authentication | `string` | `null` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.12.0"` | no | +| [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | +| [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | +| [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | +| [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"pulsar-resources-operator"` | no | +| [release\_name](#input\_release\_name) | The name of the helm release | `string` | `"pulsar-resources-operator"` | no | +| [settings](#input\_settings) | Settings which will be passed to the Helm chart values | `map(any)` | `{}` | no | +| [timeout](#input\_timeout) | Time in seconds to wait for any individual kubernetes operation | `number` | `300` | no | +| [values](#input\_values) | A list of values in raw YAML to be applied to the helm release. Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list` | `[]` | no | + +## Outputs + +No outputs. + \ No newline at end of file diff --git a/modules/streamx-operator/README.md b/modules/streamx-operator/README.md index 7db1217..2fd5834 100644 --- a/modules/streamx-operator/README.md +++ b/modules/streamx-operator/README.md @@ -20,13 +20,14 @@ |------|---------| | [terraform](#requirement\_terraform) | >= 1.0.0 | | [helm](#requirement\_helm) | >= 2.17.0, < 3.0.0 | +| [kubectl](#requirement\_kubectl) | >= 1.14.0 | ## Providers | Name | Version | |------|---------| | [helm](#provider\_helm) | 2.17.0 | -| [kubectl](#provider\_kubectl) | n/a | +| [kubectl](#provider\_kubectl) | >= 1.14.0 | ## Modules @@ -37,7 +38,7 @@ No modules. | Name | Type | |------|------| | [helm_release.streamx_operator](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource | -| [kubectl_manifest.pulsar_messaging_config](https://registry.terraform.io/providers/hashicorp/kubectl/latest/docs/resources/manifest) | resource | +| [kubectl_manifest.pulsar_messaging_config](https://registry.terraform.io/providers/gavinbunney/kubectl/latest/docs/resources/manifest) | resource | ## Inputs @@ -48,12 +49,12 @@ No modules. | [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"oci://europe-west1-docker.pkg.dev/streamx-releases/streamx-helm-charts"` | no | | [chart\_repository\_password](#input\_chart\_repository\_password) | The password used for the repository authentication | `string` | `null` | no | | [chart\_repository\_username](#input\_chart\_repository\_username) | The username used for the repository authentication | `string` | `null` | no | -| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.0.7"` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.0.8"` | no | | [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | | [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | -| [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"streamx-operator"` | no | -| [pulsar\_messaging\_config\_admin\_service\_url](#input\_pulsar\_messaging\_config\_admin\_service\_url) | Pulsar admin service URL passed to StreamX Operator. If null then default MessagingConfig is not created. | `string` | `null` | no | +| [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"streamx-system"` | no | +| [pulsar\_messaging\_config\_admin\_service\_url](#input\_pulsar\_messaging\_config\_admin\_service\_url) | Pulsar admin service URL passed to default MessagingConfig resource. If null then default MessagingConfig is not created. | `string` | `null` | no | | [pulsar\_messaging\_config\_client\_service\_url](#input\_pulsar\_messaging\_config\_client\_service\_url) | Pulsar client service URL passed to default MessagingConfig resource. If null then default MessagingConfig is not created. | `string` | `null` | no | | [release\_name](#input\_release\_name) | The name of the helm release | `string` | `"streamx-operator"` | no | | [settings](#input\_settings) | Settings which will be passed to the Helm chart values | `map(any)` | `{}` | no | From b0e6615309fd3d5a6508cfbbb49a570a962fa7b9 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Mon, 22 Dec 2025 11:16:30 +0100 Subject: [PATCH 14/21] streamx-operator 2.0.2-jvm --- main.tf | 8 +++----- modules/streamx-operator/main.tf | 2 +- modules/streamx-operator/variables.tf | 2 +- variables.tf | 8 ++++---- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git a/main.tf b/main.tf index 8f8e8fc..5c643e4 100644 --- a/main.tf +++ b/main.tf @@ -467,11 +467,9 @@ module "streamx_operator" { defaultGateway = { name = var.streamx_operator_default_gateway_name namespace = var.streamx_operator_default_gateway_namespace == null ? local.streamx_operator_namespace : var.streamx_operator_default_gateway_namespace - controllerName = var.streamx_operator_default_gateway_controller_name - issuer = { - name = var.streamx_operator_default_gateway_cert_manager_issuer_name - isClusterIssuer = var.streamx_operator_default_gateway_cert_manager_issuer_is_cluster_issuer - } + className = var.streamx_operator_default_gateway_class_name + domain = var.streamx_operator_default_gateway_domain + certificateRef = var.streamx_operator_default_gateway_certificate_ref } } federation = { diff --git a/modules/streamx-operator/main.tf b/modules/streamx-operator/main.tf index 6040b39..85cfd3b 100644 --- a/modules/streamx-operator/main.tf +++ b/modules/streamx-operator/main.tf @@ -17,7 +17,7 @@ locals { default_atomic = true default_chart_name = "streamx-operator" default_chart_repository = "oci://europe-west1-docker.pkg.dev/streamx-releases/streamx-helm-charts" - default_chart_version = "2.0.1" + default_chart_version = "2.0.2" default_cleanup_on_fail = true default_create_namespace = true default_namespace = "streamx-system" diff --git a/modules/streamx-operator/variables.tf b/modules/streamx-operator/variables.tf index 78aa777..5111301 100644 --- a/modules/streamx-operator/variables.tf +++ b/modules/streamx-operator/variables.tf @@ -51,7 +51,7 @@ variable "chart_repository_password" { } variable "chart_version" { - default = "0.0.8" + default = "2.0.2" description = "The version of the Helm chart to install" type = string } diff --git a/variables.tf b/variables.tf index e4926d6..d51c997 100644 --- a/variables.tf +++ b/variables.tf @@ -1053,19 +1053,19 @@ variable "streamx_operator_default_gateway_namespace" { type = string } -variable "streamx_operator_default_gateway_controller_name" { +variable "streamx_operator_default_gateway_class_name" { default = null type = string } -variable "streamx_operator_default_gateway_cert_manager_issuer_name" { +variable "streamx_operator_default_gateway_domain" { default = null type = string } -variable "streamx_operator_default_gateway_cert_manager_issuer_is_cluster_issuer" { +variable "streamx_operator_default_gateway_certificate_ref" { default = null - type = bool + type = string } ####### From 1c5f659866491ceb85ab55104868a34de6fa5ecb Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Mon, 22 Dec 2025 11:19:09 +0100 Subject: [PATCH 15/21] streamx-operator 2.0.2-jvm --- modules/streamx-operator/main.tf | 2 +- modules/streamx-operator/variables.tf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/streamx-operator/main.tf b/modules/streamx-operator/main.tf index 85cfd3b..9aa7aa5 100644 --- a/modules/streamx-operator/main.tf +++ b/modules/streamx-operator/main.tf @@ -17,7 +17,7 @@ locals { default_atomic = true default_chart_name = "streamx-operator" default_chart_repository = "oci://europe-west1-docker.pkg.dev/streamx-releases/streamx-helm-charts" - default_chart_version = "2.0.2" + default_chart_version = "2.0.3" default_cleanup_on_fail = true default_create_namespace = true default_namespace = "streamx-system" diff --git a/modules/streamx-operator/variables.tf b/modules/streamx-operator/variables.tf index 5111301..ea8dc37 100644 --- a/modules/streamx-operator/variables.tf +++ b/modules/streamx-operator/variables.tf @@ -51,7 +51,7 @@ variable "chart_repository_password" { } variable "chart_version" { - default = "2.0.2" + default = "2.0.3" description = "The version of the Helm chart to install" type = string } From 354e288b373ceaa8b49e95c090c3127ce979cbc9 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Mon, 22 Dec 2025 14:37:51 +0100 Subject: [PATCH 16/21] streamx-operator 2.0.3-jvm --- main.tf | 1 - modules/streamx-operator/main.tf | 2 +- modules/streamx-operator/variables.tf | 2 +- variables.tf | 5 ----- 4 files changed, 2 insertions(+), 8 deletions(-) diff --git a/main.tf b/main.tf index 5c643e4..a6be813 100644 --- a/main.tf +++ b/main.tf @@ -466,7 +466,6 @@ module "streamx_operator" { } defaultGateway = { name = var.streamx_operator_default_gateway_name - namespace = var.streamx_operator_default_gateway_namespace == null ? local.streamx_operator_namespace : var.streamx_operator_default_gateway_namespace className = var.streamx_operator_default_gateway_class_name domain = var.streamx_operator_default_gateway_domain certificateRef = var.streamx_operator_default_gateway_certificate_ref diff --git a/modules/streamx-operator/main.tf b/modules/streamx-operator/main.tf index 9aa7aa5..1b0ec97 100644 --- a/modules/streamx-operator/main.tf +++ b/modules/streamx-operator/main.tf @@ -17,7 +17,7 @@ locals { default_atomic = true default_chart_name = "streamx-operator" default_chart_repository = "oci://europe-west1-docker.pkg.dev/streamx-releases/streamx-helm-charts" - default_chart_version = "2.0.3" + default_chart_version = "2.0.4" default_cleanup_on_fail = true default_create_namespace = true default_namespace = "streamx-system" diff --git a/modules/streamx-operator/variables.tf b/modules/streamx-operator/variables.tf index ea8dc37..8f17764 100644 --- a/modules/streamx-operator/variables.tf +++ b/modules/streamx-operator/variables.tf @@ -51,7 +51,7 @@ variable "chart_repository_password" { } variable "chart_version" { - default = "2.0.3" + default = "2.0.4" description = "The version of the Helm chart to install" type = string } diff --git a/variables.tf b/variables.tf index d51c997..5262cb3 100644 --- a/variables.tf +++ b/variables.tf @@ -1048,11 +1048,6 @@ variable "streamx_operator_default_gateway_name" { type = string } -variable "streamx_operator_default_gateway_namespace" { - default = null - type = string -} - variable "streamx_operator_default_gateway_class_name" { default = null type = string From b5c4c006698269eff674c41dda81bc2355ab113d Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Mon, 22 Dec 2025 14:40:55 +0100 Subject: [PATCH 17/21] streamx-operator 2.0.3-jvm --- main.tf | 1 - variables.tf | 5 ----- 2 files changed, 6 deletions(-) diff --git a/main.tf b/main.tf index a6be813..6cf8356 100644 --- a/main.tf +++ b/main.tf @@ -465,7 +465,6 @@ module "streamx_operator" { } } defaultGateway = { - name = var.streamx_operator_default_gateway_name className = var.streamx_operator_default_gateway_class_name domain = var.streamx_operator_default_gateway_domain certificateRef = var.streamx_operator_default_gateway_certificate_ref diff --git a/variables.tf b/variables.tf index 5262cb3..8d94f1d 100644 --- a/variables.tf +++ b/variables.tf @@ -1043,11 +1043,6 @@ variable "streamx_operator_monitoring_traces_endpoint" { type = string } -variable "streamx_operator_default_gateway_name" { - default = "streamx-default" - type = string -} - variable "streamx_operator_default_gateway_class_name" { default = null type = string From 17da87858db730b9d2bc3790dc1c2e0056bd640e Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Mon, 22 Dec 2025 15:34:17 +0100 Subject: [PATCH 18/21] streamx-operator 2.0.3-jvm --- main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.tf b/main.tf index 6cf8356..2810e58 100644 --- a/main.tf +++ b/main.tf @@ -454,7 +454,7 @@ module "streamx_operator" { { name = local.streamx_operator_image_pull_secret_name } ] image = { - tag = "2.0.2-jvm" + tag = "2.0.3-jvm" } } mesh = { From c912dfef72b311a8e4b6c13523223073016efaa0 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Tue, 23 Dec 2025 08:43:55 +0100 Subject: [PATCH 19/21] streamx-operator 2.0.3-jvm --- modules/envoy-gateway/variables.tf | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/envoy-gateway/variables.tf b/modules/envoy-gateway/variables.tf index 8cc37f5..23dca87 100644 --- a/modules/envoy-gateway/variables.tf +++ b/modules/envoy-gateway/variables.tf @@ -26,19 +26,19 @@ variable "atomic" { } variable "chart_name" { - default = "cert-manager" + default = "oci://docker.io/envoyproxy/gateway-helm" description = "The name of the Helm chart to install" type = string } variable "chart_repository" { - default = "https://charts.jetstack.io" + default = null description = "The repository containing the Helm chart to install" type = string } variable "chart_version" { - default = "v1.14.5" + default = "v1.6.1" description = "The version of the Helm chart to install" type = string } @@ -56,13 +56,13 @@ variable "create_namespace" { } variable "namespace" { - default = "cert-manager" + default = "envoy-gateway-system" description = "The namespace used for the deployment" type = string } variable "release_name" { - default = "cert-manager" + default = "envoy-gateway" description = "The name of the helm release" type = string } From 46d6d8522c3a36cc8f9da7a408c1ba62d679c17b Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Tue, 23 Dec 2025 08:45:14 +0100 Subject: [PATCH 20/21] streamx-operator 2.0.3-jvm --- README.md | 8 +++----- modules/envoy-gateway/README.md | 10 +++++----- modules/streamx-operator/README.md | 2 +- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 80b8b60..e3daec7 100644 --- a/README.md +++ b/README.md @@ -214,11 +214,9 @@ | [streamx\_operator\_chart\_repository\_username](#input\_streamx\_operator\_chart\_repository\_username) | The username used for the repository authentication. | `string` | `null` | no | | [streamx\_operator\_chart\_version](#input\_streamx\_operator\_chart\_version) | The version of the Helm chart to install. | `string` | `null` | no | | [streamx\_operator\_create\_namespace](#input\_streamx\_operator\_create\_namespace) | Create a namespace for the deployment. | `bool` | `true` | no | -| [streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_is\_cluster\_issuer](#input\_streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_is\_cluster\_issuer) | n/a | `bool` | `null` | no | -| [streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_name](#input\_streamx\_operator\_default\_gateway\_cert\_manager\_issuer\_name) | n/a | `string` | `null` | no | -| [streamx\_operator\_default\_gateway\_controller\_name](#input\_streamx\_operator\_default\_gateway\_controller\_name) | n/a | `string` | `null` | no | -| [streamx\_operator\_default\_gateway\_name](#input\_streamx\_operator\_default\_gateway\_name) | n/a | `string` | `"streamx-default"` | no | -| [streamx\_operator\_default\_gateway\_namespace](#input\_streamx\_operator\_default\_gateway\_namespace) | n/a | `string` | `null` | no | +| [streamx\_operator\_default\_gateway\_certificate\_ref](#input\_streamx\_operator\_default\_gateway\_certificate\_ref) | n/a | `string` | `null` | no | +| [streamx\_operator\_default\_gateway\_class\_name](#input\_streamx\_operator\_default\_gateway\_class\_name) | n/a | `string` | `null` | no | +| [streamx\_operator\_default\_gateway\_domain](#input\_streamx\_operator\_default\_gateway\_domain) | n/a | `string` | `null` | no | | [streamx\_operator\_enabled](#input\_streamx\_operator\_enabled) | Enables StreamX Operator. | `bool` | `true` | no | | [streamx\_operator\_image\_pull\_secret\_enabled](#input\_streamx\_operator\_image\_pull\_secret\_enabled) | Enables StreamX Operator Image Pull Secret. | `bool` | `true` | no | | [streamx\_operator\_image\_pull\_secret\_name](#input\_streamx\_operator\_image\_pull\_secret\_name) | StreamX Operator image pull secret name. | `string` | `"sx-operator-image-pull-secret"` | no | diff --git a/modules/envoy-gateway/README.md b/modules/envoy-gateway/README.md index 2da7f29..e59790d 100644 --- a/modules/envoy-gateway/README.md +++ b/modules/envoy-gateway/README.md @@ -32,14 +32,14 @@ No modules. | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [atomic](#input\_atomic) | Purge the chart on a failed installation. | `bool` | `true` | no | -| [chart\_name](#input\_chart\_name) | The name of the Helm chart to install | `string` | `"cert-manager"` | no | -| [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"https://charts.jetstack.io"` | no | -| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"v1.14.5"` | no | +| [chart\_name](#input\_chart\_name) | The name of the Helm chart to install | `string` | `"oci://docker.io/envoyproxy/gateway-helm"` | no | +| [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `null` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"v1.6.1"` | no | | [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | | [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | -| [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"cert-manager"` | no | -| [release\_name](#input\_release\_name) | The name of the helm release | `string` | `"cert-manager"` | no | +| [namespace](#input\_namespace) | The namespace used for the deployment | `string` | `"envoy-gateway-system"` | no | +| [release\_name](#input\_release\_name) | The name of the helm release | `string` | `"envoy-gateway"` | no | | [settings](#input\_settings) | Settings which will be passed to the Helm chart values | `map(any)` | `{}` | no | | [timeout](#input\_timeout) | Time in seconds to wait for any individual kubernetes operation | `number` | `300` | no | | [values](#input\_values) | A list of values in raw YAML to be applied to the helm release. Merges with the settings input, can also be used with the `file()` function, i.e. `file("my/values.yaml")`. | `list` | `[]` | no | diff --git a/modules/streamx-operator/README.md b/modules/streamx-operator/README.md index 2fd5834..d527cdd 100644 --- a/modules/streamx-operator/README.md +++ b/modules/streamx-operator/README.md @@ -49,7 +49,7 @@ No modules. | [chart\_repository](#input\_chart\_repository) | The repository containing the Helm chart to install | `string` | `"oci://europe-west1-docker.pkg.dev/streamx-releases/streamx-helm-charts"` | no | | [chart\_repository\_password](#input\_chart\_repository\_password) | The password used for the repository authentication | `string` | `null` | no | | [chart\_repository\_username](#input\_chart\_repository\_username) | The username used for the repository authentication | `string` | `null` | no | -| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"0.0.8"` | no | +| [chart\_version](#input\_chart\_version) | The version of the Helm chart to install | `string` | `"2.0.4"` | no | | [cleanup\_on\_fail](#input\_cleanup\_on\_fail) | Allow deletion of new resources created in this upgrade when upgrade fails | `bool` | `true` | no | | [create\_namespace](#input\_create\_namespace) | Create a namespace for the deployment. Defaults to "true". | `bool` | `true` | no | | [force\_defaults\_for\_null\_variables](#input\_force\_defaults\_for\_null\_variables) | Enables forcing default variable values when the variable value passed to the module is null. | `bool` | `true` | no | From 44991d5a9c31c4807abf2561b7633da5b6e7ada1 Mon Sep 17 00:00:00 2001 From: Kamil Chociej Date: Tue, 23 Dec 2025 08:46:24 +0100 Subject: [PATCH 21/21] fmt --- main.tf | 4 ++-- outputs.tf | 2 +- variables.tf | 12 ++++++------ 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/main.tf b/main.tf index 2810e58..8c9b5f8 100644 --- a/main.tf +++ b/main.tf @@ -465,8 +465,8 @@ module "streamx_operator" { } } defaultGateway = { - className = var.streamx_operator_default_gateway_class_name - domain = var.streamx_operator_default_gateway_domain + className = var.streamx_operator_default_gateway_class_name + domain = var.streamx_operator_default_gateway_domain certificateRef = var.streamx_operator_default_gateway_certificate_ref } } diff --git a/outputs.tf b/outputs.tf index bbbc89c..7fb9be8 100644 --- a/outputs.tf +++ b/outputs.tf @@ -15,7 +15,7 @@ output "load_balancer_ip" { description = "K8s cluster Load Balancer IP" - value = try(coalesce(try(module.ingress_controller_nginx.0.ingress_ip, null), try( module.ingress_controller_apisix.0.ingress_ip, null), try( module.envoy_gateway.0.load_balancer_ip, null)), null) + value = try(coalesce(try(module.ingress_controller_nginx.0.ingress_ip, null), try(module.ingress_controller_apisix.0.ingress_ip, null), try(module.envoy_gateway.0.load_balancer_ip, null)), null) } output "cert_manager_lets_encrypt_issuer_ingress_annotations" { diff --git a/variables.tf b/variables.tf index 8d94f1d..fbcd4af 100644 --- a/variables.tf +++ b/variables.tf @@ -1044,18 +1044,18 @@ variable "streamx_operator_monitoring_traces_endpoint" { } variable "streamx_operator_default_gateway_class_name" { - default = null - type = string + default = null + type = string } variable "streamx_operator_default_gateway_domain" { - default = null - type = string + default = null + type = string } variable "streamx_operator_default_gateway_certificate_ref" { - default = null - type = string + default = null + type = string } #######