[ingress-controller] Redesigned controller parameters
This PS consolidates control over ingress class name and controller class names at one place. Change-Id: I394ec99e0e6177c8c8553b636e3fda90c967c15b
This commit is contained in:
parent
56dd4fdb84
commit
db3537e56b
@ -15,7 +15,7 @@ apiVersion: v1
|
|||||||
appVersion: v1.5.1
|
appVersion: v1.5.1
|
||||||
description: OpenStack-Helm Ingress Controller
|
description: OpenStack-Helm Ingress Controller
|
||||||
name: ingress
|
name: ingress
|
||||||
version: 0.2.17
|
version: 0.2.18
|
||||||
home: https://github.com/kubernetes/ingress
|
home: https://github.com/kubernetes/ingress
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/kubernetes/ingress
|
- https://github.com/kubernetes/ingress
|
||||||
|
@ -46,7 +46,9 @@ function start () {
|
|||||||
--election-id=${RELEASE_NAME} \
|
--election-id=${RELEASE_NAME} \
|
||||||
--controller-class=${CONTROLLER_CLASS} \
|
--controller-class=${CONTROLLER_CLASS} \
|
||||||
--ingress-class=${INGRESS_CLASS} \
|
--ingress-class=${INGRESS_CLASS} \
|
||||||
|
{{- if .Values.deployment.cluster.ingressClassByName }}
|
||||||
--ingress-class-by-name=${INGRESS_CLASS_BY_NAME} \
|
--ingress-class-by-name=${INGRESS_CLASS_BY_NAME} \
|
||||||
|
{{- end }}
|
||||||
--default-backend-service=${POD_NAMESPACE}/${ERROR_PAGE_SERVICE} \
|
--default-backend-service=${POD_NAMESPACE}/${ERROR_PAGE_SERVICE} \
|
||||||
{{- if .Values.conf.default_ssl_certificate.enabled }}
|
{{- if .Values.conf.default_ssl_certificate.enabled }}
|
||||||
{{- $ns := .Values.conf.default_ssl_certificate.namespace | default .Release.Namespace }}
|
{{- $ns := .Values.conf.default_ssl_certificate.namespace | default .Release.Namespace }}
|
||||||
|
@ -15,22 +15,6 @@ limitations under the License.
|
|||||||
{{- if .Values.manifests.deployment_ingress }}
|
{{- if .Values.manifests.deployment_ingress }}
|
||||||
{{- $envAll := . }}
|
{{- $envAll := . }}
|
||||||
|
|
||||||
# Evaluate if we are deploying in cluster mode
|
|
||||||
{{- if eq .Values.deployment.mode "cluster" }}
|
|
||||||
# Check INGRESS_CLASS empty
|
|
||||||
{{- if empty .Values.conf.controller.INGRESS_CLASS -}}
|
|
||||||
{{- $_ := set .Values.conf.controller "INGRESS_CLASS" .Values.deployment.cluster.class -}}
|
|
||||||
{{- end }}
|
|
||||||
# Check CONTROLLER_CLASS empty
|
|
||||||
{{- if empty .Values.conf.controller.CONTROLLER_CLASS -}}
|
|
||||||
{{- $_ := set .Values.conf.controller "CONTROLLER_CLASS" .Values.deployment.cluster.controllerClass -}}
|
|
||||||
{{- end }}
|
|
||||||
# Set default values for INGRESS_CLASS & CONTROLLER_CLASS if deploying in namespace mode
|
|
||||||
{{- else if eq .Values.deployment.mode "namespace" }}
|
|
||||||
{{- $_ := set .Values.conf.controller "INGRESS_CLASS" "nginx" -}}
|
|
||||||
{{- $_ := set .Values.conf.controller "CONTROLLER_CLASS" "k8s.io/nginx-ingress" -}}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- $serviceAccountName := printf "%s-%s" .Release.Name "ingress" }}
|
{{- $serviceAccountName := printf "%s-%s" .Release.Name "ingress" }}
|
||||||
{{ tuple $envAll "ingress" $serviceAccountName | include "helm-toolkit.snippets.kubernetes_pod_rbac_serviceaccount" }}
|
{{ tuple $envAll "ingress" $serviceAccountName | include "helm-toolkit.snippets.kubernetes_pod_rbac_serviceaccount" }}
|
||||||
---
|
---
|
||||||
@ -322,7 +306,14 @@ spec:
|
|||||||
value: {{ .Release.Name | quote }}
|
value: {{ .Release.Name | quote }}
|
||||||
- name: ERROR_PAGE_SERVICE
|
- name: ERROR_PAGE_SERVICE
|
||||||
value: {{ tuple "ingress" "error_pages" . | include "helm-toolkit.endpoints.hostname_short_endpoint_lookup" | quote }}
|
value: {{ tuple "ingress" "error_pages" . | include "helm-toolkit.endpoints.hostname_short_endpoint_lookup" | quote }}
|
||||||
{{ include "helm-toolkit.utils.to_k8s_env_vars" .Values.conf.controller | indent 12 }}
|
- name: INGRESS_CLASS
|
||||||
|
value: "{{ .Values.deployment.cluster.class }}"
|
||||||
|
{{- if .Values.deployment.cluster.ingressClassByName }}
|
||||||
|
- name: INGRESS_CLASS_BY_NAME
|
||||||
|
value: "{{ .Values.deployment.cluster.ingressClassByName }}"
|
||||||
|
{{- end }}
|
||||||
|
- name: CONTROLLER_CLASS
|
||||||
|
value: "{{ .Values.deployment.cluster.controllerClass }}"
|
||||||
ports:
|
ports:
|
||||||
- containerPort: {{ tuple "ingress" "internal" "http" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
|
- containerPort: {{ tuple "ingress" "internal" "http" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
|
||||||
{{- if .Values.network.host_namespace }}
|
{{- if .Values.network.host_namespace }}
|
||||||
|
@ -21,6 +21,7 @@ deployment:
|
|||||||
type: Deployment
|
type: Deployment
|
||||||
cluster:
|
cluster:
|
||||||
class: "nginx-cluster"
|
class: "nginx-cluster"
|
||||||
|
ingressClassByName: false
|
||||||
controllerClass: "k8s.io/nginx-ingress"
|
controllerClass: "k8s.io/nginx-ingress"
|
||||||
|
|
||||||
images:
|
images:
|
||||||
@ -308,23 +309,6 @@ secrets:
|
|||||||
dhparam:
|
dhparam:
|
||||||
secret_dhparam: |
|
secret_dhparam: |
|
||||||
conf:
|
conf:
|
||||||
controller:
|
|
||||||
# NOTE: if left blank this is populated from
|
|
||||||
# .deployment.cluster.class in cluster mode, or set to
|
|
||||||
# "nginx" in namespace mode
|
|
||||||
# [IN DEPRECATION] Name of the ingress class this controller satisfies.
|
|
||||||
# The class of an Ingress object is set using the annotation "kubernetes.io/ingress.class" (deprecated).
|
|
||||||
# The parameter --controller-class has precedence over this. (default "nginx")
|
|
||||||
INGRESS_CLASS: null
|
|
||||||
# Define if Ingress Controller should watch for Ingress Class by Name together with Controller Class
|
|
||||||
INGRESS_CLASS_BY_NAME: true
|
|
||||||
# NOTE: if left blank this is populated from
|
|
||||||
# .deployment.cluster.controllerClass in cluster mode, or set to
|
|
||||||
# "k8s.io/nginx-ingress" in namespace mode
|
|
||||||
# Ingress Class Controller value this Ingress satisfies.
|
|
||||||
# The class of an Ingress object is set using the field IngressClassName in Kubernetes clusters version v1.19.0 or higher. The .spec.controller value of the IngressClass
|
|
||||||
# referenced in an Ingress Object should be the same value specified here to make this object be watched. (default "k8s.io/ingress-nginx")
|
|
||||||
CONTROLLER_CLASS: null
|
|
||||||
ingress:
|
ingress:
|
||||||
enable-underscores-in-headers: "true"
|
enable-underscores-in-headers: "true"
|
||||||
# NOTE(portdirect): if left blank this is populated from
|
# NOTE(portdirect): if left blank this is populated from
|
||||||
|
7
ingress/values_overrides/ingress-class-cluster.yaml
Normal file
7
ingress/values_overrides/ingress-class-cluster.yaml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
deployment:
|
||||||
|
mode: cluster
|
||||||
|
type: DaemonSet
|
||||||
|
network:
|
||||||
|
host_namespace: true
|
||||||
|
...
|
@ -1,9 +1,8 @@
|
|||||||
---
|
---
|
||||||
conf:
|
deployment:
|
||||||
ingress:
|
mode: namespace
|
||||||
proxy-body-size: 20m
|
type: Deployment
|
||||||
controller:
|
cluster:
|
||||||
INGRESS_CLASS: ucp-ingress
|
class: "ucp-ingress"
|
||||||
INGRESS_CLASS_BY_NAME: true
|
controllerClass: "k8s.io/ucp-ingress"
|
||||||
CONTROLLER_CLASS: k8s.io/ucp-ingress
|
|
||||||
...
|
...
|
||||||
|
@ -21,4 +21,5 @@ ingress:
|
|||||||
- 0.2.15 Update kubernetes registry to registry.k8s.io
|
- 0.2.15 Update kubernetes registry to registry.k8s.io
|
||||||
- 0.2.16 Updated deprecated IngressClass annotation
|
- 0.2.16 Updated deprecated IngressClass annotation
|
||||||
- 0.2.17 Fixed controller parameters
|
- 0.2.17 Fixed controller parameters
|
||||||
|
- 0.2.18 Fixed some additional controller issues
|
||||||
...
|
...
|
||||||
|
Loading…
x
Reference in New Issue
Block a user