From a6b41267303dc4ac81de2d7b02a7828ee26b3c50 Mon Sep 17 00:00:00 2001 From: jiyufeng048 Date: Mon, 29 Sep 2025 09:57:03 +0800 Subject: [PATCH 1/4] feat: add gatewayProxy publishService and statusAddress --- .../apisix-ingress-controller/templates/gatewayproxy.yaml | 4 ++++ charts/apisix-ingress-controller/values.yaml | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/charts/apisix-ingress-controller/templates/gatewayproxy.yaml b/charts/apisix-ingress-controller/templates/gatewayproxy.yaml index 8c767cbc..9455647b 100644 --- a/charts/apisix-ingress-controller/templates/gatewayproxy.yaml +++ b/charts/apisix-ingress-controller/templates/gatewayproxy.yaml @@ -31,4 +31,8 @@ spec: auth: {{- toYaml . | nindent 8 }} {{- end }} + publishService: {{ .Values.gatewayProxy.publishService }} + {{- if .Values.gatewayProxy.statusAddress }} + statusAddress: {{ .Values.gatewayProxy.statusAddress }} + {{- end }} {{- end }} diff --git a/charts/apisix-ingress-controller/values.yaml b/charts/apisix-ingress-controller/values.yaml index ec68e3a0..15e5a720 100644 --- a/charts/apisix-ingress-controller/values.yaml +++ b/charts/apisix-ingress-controller/values.yaml @@ -105,6 +105,13 @@ gatewayProxy: adminKey: value: "edd1c9f034335f136f87ad84b625c8f1" + # -- publishService specifies the LoadBalancer-type Service whose external address the controller uses to update the + # status of Ingress resources. + publishService: apisix-ingress/apisix-gateway + # -- statusAddress specifies the external IP addresses that the controller uses to populate the status field + # of GatewayProxy or Ingress resources for developers to access. statusAddress has higher priority than publishService. + # statusAddress: + apisix: adminService: namespace: apisix-ingress From c51a18c4249a1418d10a93cb1fd7fc37aac2f863 Mon Sep 17 00:00:00 2001 From: jiyufeng048 Date: Mon, 29 Sep 2025 10:03:39 +0800 Subject: [PATCH 2/4] feat: add gatewayProxy publishService and statusAddress --- charts/apisix-ingress-controller/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/apisix-ingress-controller/values.yaml b/charts/apisix-ingress-controller/values.yaml index 15e5a720..048e2e4d 100644 --- a/charts/apisix-ingress-controller/values.yaml +++ b/charts/apisix-ingress-controller/values.yaml @@ -106,7 +106,7 @@ gatewayProxy: value: "edd1c9f034335f136f87ad84b625c8f1" # -- publishService specifies the LoadBalancer-type Service whose external address the controller uses to update the - # status of Ingress resources. + # status of Ingress resources. Example: [Namespace]/[APISIX_LoadBalancer_Service] publishService: apisix-ingress/apisix-gateway # -- statusAddress specifies the external IP addresses that the controller uses to populate the status field # of GatewayProxy or Ingress resources for developers to access. statusAddress has higher priority than publishService. From 55ea7d66bd4f618952a7ce3c60de4d8992b7f867 Mon Sep 17 00:00:00 2001 From: jiyufeng048 Date: Mon, 29 Sep 2025 10:05:24 +0800 Subject: [PATCH 3/4] feat: add gatewayProxy publishService and statusAddress --- charts/apisix-ingress-controller/values.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/charts/apisix-ingress-controller/values.yaml b/charts/apisix-ingress-controller/values.yaml index 048e2e4d..5b5df1af 100644 --- a/charts/apisix-ingress-controller/values.yaml +++ b/charts/apisix-ingress-controller/values.yaml @@ -104,7 +104,6 @@ gatewayProxy: type: AdminKey adminKey: value: "edd1c9f034335f136f87ad84b625c8f1" - # -- publishService specifies the LoadBalancer-type Service whose external address the controller uses to update the # status of Ingress resources. Example: [Namespace]/[APISIX_LoadBalancer_Service] publishService: apisix-ingress/apisix-gateway From 195657a6867ecafcd1ee3b74a54c87c49ef0d99b Mon Sep 17 00:00:00 2001 From: jiyufeng048 Date: Sat, 4 Oct 2025 01:02:42 +0800 Subject: [PATCH 4/4] feat: add gatewayProxy publishService and statusAddress --- charts/apisix-ingress-controller/README.md | 2 ++ .../apisix-ingress-controller/templates/gatewayproxy.yaml | 2 ++ charts/apisix-ingress-controller/values.yaml | 8 +++++--- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/charts/apisix-ingress-controller/README.md b/charts/apisix-ingress-controller/README.md index 886ada18..f38f7d77 100644 --- a/charts/apisix-ingress-controller/README.md +++ b/charts/apisix-ingress-controller/README.md @@ -146,6 +146,8 @@ The same for container level, you need to set: | gatewayProxy.provider.controlPlane.auth.type | string | `"AdminKey"` | | | gatewayProxy.provider.controlPlane.endpoints | list | `[]` | | | gatewayProxy.provider.type | string | `"ControlPlane"` | | +| gatewayProxy.publishService | string | `""` | publishService specifies the LoadBalancer-type Service whose external address the controller uses to update the status of Ingress resources. Example: [Namespace]/[APISIX_LoadBalancer_Service]. Applicable to ingress resources. | +| gatewayProxy.statusAddress | string | `""` | statusAddress specifies the external IP addresses that the controller uses to populate the status field of GatewayProxy or Ingress resources for developers to access. statusAddress has higher priority than publishService. | | labelsOverride | object | `{}` | Override default labels assigned to Apache APISIX ingress controller resource | | nameOverride | string | `""` | Default values for apisix-ingress-controller. This is a YAML-formatted file. Declare variables to be passed into your templates. | | podDisruptionBudget | object | `{"enabled":false,"maxUnavailable":1,"minAvailable":"90%"}` | See https://kubernetes.io/docs/tasks/run-application/configure-pdb/ for more details | diff --git a/charts/apisix-ingress-controller/templates/gatewayproxy.yaml b/charts/apisix-ingress-controller/templates/gatewayproxy.yaml index 9455647b..c7c1a221 100644 --- a/charts/apisix-ingress-controller/templates/gatewayproxy.yaml +++ b/charts/apisix-ingress-controller/templates/gatewayproxy.yaml @@ -31,7 +31,9 @@ spec: auth: {{- toYaml . | nindent 8 }} {{- end }} + {{- if .Values.gatewayProxy.publishService }} publishService: {{ .Values.gatewayProxy.publishService }} + {{- end }} {{- if .Values.gatewayProxy.statusAddress }} statusAddress: {{ .Values.gatewayProxy.statusAddress }} {{- end }} diff --git a/charts/apisix-ingress-controller/values.yaml b/charts/apisix-ingress-controller/values.yaml index 5b5df1af..e327be31 100644 --- a/charts/apisix-ingress-controller/values.yaml +++ b/charts/apisix-ingress-controller/values.yaml @@ -105,11 +105,13 @@ gatewayProxy: adminKey: value: "edd1c9f034335f136f87ad84b625c8f1" # -- publishService specifies the LoadBalancer-type Service whose external address the controller uses to update the - # status of Ingress resources. Example: [Namespace]/[APISIX_LoadBalancer_Service] - publishService: apisix-ingress/apisix-gateway + # status of Ingress resources. Example: [Namespace]/[APISIX_LoadBalancer_Service]. Applicable to ingress resources. + publishService: "" + # publishService: apisix-ingress/apisix-gateway + # -- statusAddress specifies the external IP addresses that the controller uses to populate the status field # of GatewayProxy or Ingress resources for developers to access. statusAddress has higher priority than publishService. - # statusAddress: + statusAddress: "" apisix: adminService: