[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 <sylvain.desbureaux@orange.com>
Change-Id: I952826d03722693ebae7c95a083b95bf83752d68
diff --git a/kubernetes/common/common/templates/_ingress.tpl b/kubernetes/common/common/templates/_ingress.tpl
index e57d4be..18f9bb1 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 3daca28..74c7bdb 100644
--- a/kubernetes/dcaemod/components/dcaemod-designtool/values.yaml
+++ b/kubernetes/dcaemod/components/dcaemod-designtool/values.yaml
@@ -22,11 +22,9 @@
   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 @@
 
 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 274edcd..541f239 100644
--- a/kubernetes/dcaemod/components/dcaemod-distributor-api/values.yaml
+++ b/kubernetes/dcaemod/components/dcaemod-distributor-api/values.yaml
@@ -22,11 +22,9 @@
   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 @@
 
 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 45ae96f..4b79525 100644
--- a/kubernetes/dcaemod/components/dcaemod-genprocessor/values.yaml
+++ b/kubernetes/dcaemod/components/dcaemod-genprocessor/values.yaml
@@ -23,9 +23,8 @@
   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 @@
 
 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 42fe9d8..13ea930 100644
--- a/kubernetes/dcaemod/components/dcaemod-onboarding-api/values.yaml
+++ b/kubernetes/dcaemod/components/dcaemod-onboarding-api/values.yaml
@@ -22,9 +22,9 @@
   nodePortPrefix: 302
   nodePortPrefixExt: 304
   ingress:
-    enabled: true
     virtualhost:
-        enabled: false
+      baseurl: "simpledemo.onap.org"
+
 #################################################################
 # Secrets metaconfig
 #################################################################
@@ -48,8 +48,10 @@
       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 5b29afc..f3a887a 100755
--- a/kubernetes/onap/values.yaml
+++ b/kubernetes/onap/values.yaml
@@ -145,7 +145,6 @@
   ingress:
     enabled: false
     virtualhost:
-      enabled: true
       baseurl: "simpledemo.onap.org"
 
   # Global Service Mesh configuration