From afae229d3a7eb8c20633e049d3f597fb2eab7bbc Mon Sep 17 00:00:00 2001 From: Sylvain Desbureaux Date: Tue, 8 Dec 2020 10:48:29 +0100 Subject: [PATCH] [COMMON] Configure paths for Ingress Instead of globally choosing between virtualhosts and path based ingress, it's better to allow to choose it per component. Issue-ID: OOM-2641 Signed-off-by: Sylvain Desbureaux Change-Id: I952826d03722693ebae7c95a083b95bf83752d68 --- docs/oom_setup_ingress_controller.rst | 1 - kubernetes/common/common/templates/_ingress.tpl | 38 ++++------------------ .../components/dcaemod-designtool/values.yaml | 11 ++++--- .../components/dcaemod-distributor-api/values.yaml | 8 ++--- .../components/dcaemod-genprocessor/values.yaml | 7 ++-- .../components/dcaemod-onboarding-api/values.yaml | 8 +++-- kubernetes/onap/values.yaml | 1 - 7 files changed, 26 insertions(+), 48 deletions(-) diff --git a/docs/oom_setup_ingress_controller.rst b/docs/oom_setup_ingress_controller.rst index c15171c7be..172e9ff1e5 100644 --- a/docs/oom_setup_ingress_controller.rst +++ b/docs/oom_setup_ingress_controller.rst @@ -174,7 +174,6 @@ Ingress also can be enabled on any onap setup override using following code: --- <...> - #ingress virtualhost based configuration global: <...> ingress: diff --git a/kubernetes/common/common/templates/_ingress.tpl b/kubernetes/common/common/templates/_ingress.tpl index e57d4bedaa..18f9bb1ba5 100644 --- a/kubernetes/common/common/templates/_ingress.tpl +++ b/kubernetes/common/common/templates/_ingress.tpl @@ -1,42 +1,18 @@ -{{- define "ingress.config.host" -}} -{{- $dot := default . .dot -}} -{{- $baseaddr := (required "'baseaddr' param, set to the specific part of the fqdn, is required." .baseaddr) -}} -{{- $burl := (required "'baseurl' param, set to the generic part of the fqdn, is required." $dot.Values.global.ingress.virtualhost.baseurl) -}} -{{ printf "%s.%s" $baseaddr $burl }} -{{- end -}} - {{- define "ingress.config.port" -}} {{- $dot := default . .dot -}} -{{- if .Values.ingress -}} -{{- if .Values.global.ingress -}} -{{- if or (not .Values.global.ingress.virtualhost) (not .Values.global.ingress.virtualhost.enabled) -}} - - http: - paths: -{{- range .Values.ingress.service }} -{{ $baseaddr := required "baseaddr" .baseaddr }} - - path: {{ include "ingress.config.host" (dict "dot" $dot "baseaddr" $baseaddr) }} - backend: - serviceName: {{ .name }} - servicePort: {{ .port }} -{{- end -}} -{{- else if .Values.ingress.service -}} +{{- $burl := (required "'baseurl' param, set to the generic part of the fqdn, is required." $dot.Values.global.ingress.virtualhost.baseurl) -}} {{ range .Values.ingress.service }} -{{ $baseaddr := required "baseaddr" .baseaddr }} - - host: {{ include "ingress.config.host" (dict "dot" $dot "baseaddr" $baseaddr) }} +{{- $baseaddr := (required "'baseaddr' param, set to the specific part of the fqdn, is required." .baseaddr) }} + - host: {{ printf "%s.%s" $baseaddr $burl }} http: paths: - backend: serviceName: {{ .name }} servicePort: {{ .port }} -{{- end -}} -{{- else -}} - - path: {{ printf "/%s" .Chart.Name }} - backend: - serviceName: {{ .Chart.Name }} - servicePort: {{ .Values.service.externalPort }} -{{- end -}} -{{- end -}} -{{- end -}} + {{- if .path }} + path: {{ .path }} + {{- end }} +{{- end }} {{- end -}} diff --git a/kubernetes/dcaemod/components/dcaemod-designtool/values.yaml b/kubernetes/dcaemod/components/dcaemod-designtool/values.yaml index 3daca28476..74c7bdb223 100644 --- a/kubernetes/dcaemod/components/dcaemod-designtool/values.yaml +++ b/kubernetes/dcaemod/components/dcaemod-designtool/values.yaml @@ -22,11 +22,9 @@ global: persistence: {} nodePortPrefix: 302 nodePortPrefixExt: 304 - ingress: - enabled: true virtualhost: - enabled: false + baseurl: "simpledemo.onap.org" config: nifiJarsIndexURL: http://dcaemod-genprocessor:8080/nifi-jars @@ -44,11 +42,14 @@ service: ingress: enabled: true + enabledOverride: true service: - - baseaddr: "nifi" + - baseaddr: "dcaemod" + path: "/nifi" name: "dcaemod-designtool" port: 8080 - - baseaddr: "nifi-api" + - baseaddr: "dcaemod" + path: "/nifi-api" name: "dcaemod-designtool" port: 8080 config: diff --git a/kubernetes/dcaemod/components/dcaemod-distributor-api/values.yaml b/kubernetes/dcaemod/components/dcaemod-distributor-api/values.yaml index 274edcd4a3..541f239d77 100644 --- a/kubernetes/dcaemod/components/dcaemod-distributor-api/values.yaml +++ b/kubernetes/dcaemod/components/dcaemod-distributor-api/values.yaml @@ -22,11 +22,9 @@ global: persistence: {} nodePortPrefix: 302 nodePortPrefixExt: 304 - ingress: - enabled: true virtualhost: - enabled: false + baseurl: "simpledemo.onap.org" config: nifiRegistryURL: http://dcaemod-nifi-registry:18080/nifi-registry-api @@ -44,8 +42,10 @@ service: ingress: enabled: true + enabledOverride: true service: - - baseaddr: "distributor" + - baseaddr: "dcaemod" + path: "/distributor" name: dcaemod-distributor-api port: 8080 config: diff --git a/kubernetes/dcaemod/components/dcaemod-genprocessor/values.yaml b/kubernetes/dcaemod/components/dcaemod-genprocessor/values.yaml index 45ae96f2d2..4b79525c83 100644 --- a/kubernetes/dcaemod/components/dcaemod-genprocessor/values.yaml +++ b/kubernetes/dcaemod/components/dcaemod-genprocessor/values.yaml @@ -23,9 +23,8 @@ global: nodePortPrefix: 302 nodePortPrefixExt: 304 ingress: - enabled: true virtualhost: - enabled: false + baseurl: "simpledemo.onap.org" config: onboardingAPIURL: http://dcaemod-onboarding-api:8080/onboarding @@ -43,8 +42,10 @@ service: ingress: enabled: true + enabledOverride: true service: - - baseaddr: "nifi-jars" + - baseaddr: "dcaemod" + path: "/nifi-jars" name: dcaemod-genprocessor port: 8080 config: diff --git a/kubernetes/dcaemod/components/dcaemod-onboarding-api/values.yaml b/kubernetes/dcaemod/components/dcaemod-onboarding-api/values.yaml index 42fe9d8f56..13ea930aa5 100644 --- a/kubernetes/dcaemod/components/dcaemod-onboarding-api/values.yaml +++ b/kubernetes/dcaemod/components/dcaemod-onboarding-api/values.yaml @@ -22,9 +22,9 @@ global: nodePortPrefix: 302 nodePortPrefixExt: 304 ingress: - enabled: true virtualhost: - enabled: false + baseurl: "simpledemo.onap.org" + ################################################################# # Secrets metaconfig ################################################################# @@ -48,8 +48,10 @@ service: port: 8080 ingress: enabled: true + enabledOverride: true service: - - baseaddr: "onboarding" + - baseaddr: "dcaemod" + path: "/onboarding" name: dcaemod-onboarding-api port: 8080 config: diff --git a/kubernetes/onap/values.yaml b/kubernetes/onap/values.yaml index 5b29afc194..f3a887a763 100755 --- a/kubernetes/onap/values.yaml +++ b/kubernetes/onap/values.yaml @@ -145,7 +145,6 @@ global: ingress: enabled: false virtualhost: - enabled: true baseurl: "simpledemo.onap.org" # Global Service Mesh configuration -- 2.16.6