Add Multicloud containers to ONAP K8S

Change-Id: I0801156481c8306cc7599a27d50b981385968a70
Issue-Id: OOM-18
Signed-off-by: liangke <lokyse@163.com>
diff --git a/kubernetes/multicloud/Chart.yaml b/kubernetes/multicloud/Chart.yaml
new file mode 100644
index 0000000..da92f90
--- /dev/null
+++ b/kubernetes/multicloud/Chart.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+description: A Helm chart for Kubernetes
+name: multicloud
+version: 1.1.0
diff --git a/kubernetes/multicloud/templates/all-services.yaml b/kubernetes/multicloud/templates/all-services.yaml
new file mode 100644
index 0000000..b4eafe5
--- /dev/null
+++ b/kubernetes/multicloud/templates/all-services.yaml
@@ -0,0 +1,54 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: framework
+  namespace: "{{ .Values.nsPrefix }}-multicloud"
+  labels:
+    name: framework
+  annotations:
+    msb.onap.org/service-info: '[
+    {
+      "serviceName": "multicloud",
+      "version": "v0",
+      "url": "/api/multicloud/v0",
+      "protocol": "REST",
+      "port": "9001",
+      "visualRange": "1"
+    }
+    ]'
+spec:
+  ports:
+  - name: "framework-port"
+    port: 9001
+    nodePort: {{ .Values.nodePortPrefix }}91
+  selector:
+    app: framework
+  type: NodePort
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: multicloud-vio
+  namespace: "{{ .Values.nsPrefix }}-multicloud"
+  labels:
+    name: multicloud-vio
+  annotations:
+    msb.onap.org/service-info: '[
+    {
+      "serviceName": "multicloud-vio",
+      "version": "v0",
+      "url": "/api/multicloud-vio/v0",
+      "protocol": "REST",
+      "port": "9004",
+      "visualRange": "1"
+    }
+    ]'
+
+spec:
+  ports:
+  - name: "multicloud-port"
+    port: 9004
+    nodePort: {{ .Values.nodePortPrefix }}94
+  selector:
+    app: multicloud-vio
+  type: NodePort
diff --git a/kubernetes/multicloud/templates/framework-deployment.yaml b/kubernetes/multicloud/templates/framework-deployment.yaml
new file mode 100644
index 0000000..f97252a
--- /dev/null
+++ b/kubernetes/multicloud/templates/framework-deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: framework
+  namespace: "{{ .Values.nsPrefix }}-multicloud"
+spec:
+  selector:
+    matchLabels:
+      app: framework
+  template:
+    metadata:
+      labels:
+        app: framework
+      name: framework
+    spec:
+     hostname: framework
+     containers:
+     - env:
+       - name: AAI_ADDR
+         value: aai-service.{{ .Values.nsPrefix }}-aai
+       - name: AAI_PORT
+         value: "8443"
+       - name: AAI_SCHEMA_VERSION
+         value: "v11"
+       - name: AAI_USERNAME
+         value: "AAI"
+       - name: AAI_PASSWORD
+         value: "AAI"
+       name: framework
+       volumeMounts:
+       - mountPath: /service/multivimbroker/logs
+         name: framework-log
+       image: {{ .Values.image.framework }}
+       imagePullPolicy: {{ .Values.pullPolicy }}
+       ports:
+       - containerPort: 9001
+       livenessProbe:
+         httpGet:
+           path: /api/multicloud/v0/swagger.json
+           port: 9001
+           scheme: HTTP
+         initialDelaySeconds: 30
+         periodSeconds: 10
+         timeoutSeconds: 10
+         successThreshold: 1
+         failureThreshold: 5
+     restartPolicy: Always
+     volumes:
+     - name: framework-log
+       hostPath:
+         path: /dockerdata-nfs/{{ .Values.nsPrefix }}/multicloud/framework/logs
+     imagePullSecrets:
+     - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+
+
diff --git a/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml b/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml
new file mode 100644
index 0000000..5da4f63
--- /dev/null
+++ b/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: multicloud-vio
+  namespace: "{{ .Values.nsPrefix }}-multicloud"
+spec:
+  selector:
+    matchLabels:
+      app: multicloud-vio
+  template:
+    metadata:
+      labels:
+        app: multicloud-vio
+      name: multicloud-vio
+    spec:
+     hostname: multicloud-vio
+     containers:
+     - env:
+       - name: AAI_ADDR
+         value: aai-service.{{ .Values.nsPrefix }}-aai
+       - name: AAI_PORT
+         value: "8443"
+       - name: AAI_SCHEMA_VERSION
+         value: "v11"
+       - name: AAI_USERNAME
+         value: "AAI"
+       - name: AAI_PASSWORD
+         value: "AAI"
+       name: multicloud-vio
+       volumeMounts:
+       - mountPath: /service/vio/logs
+         name: vio-log
+       image: {{ .Values.image.vio }}
+       imagePullPolicy: {{ .Values.pullPolicy }}
+       ports:
+       - containerPort: 9004
+       livenessProbe:
+         httpGet:
+           path: /api/multicloud-vio/v0/swagger.json
+           port: 9004
+           scheme: HTTP
+         initialDelaySeconds: 30
+         periodSeconds: 10
+         timeoutSeconds: 10
+         successThreshold: 1
+         failureThreshold: 5
+     restartPolicy: Always
+     volumes:
+     - name: vio-log
+       hostPath:
+         path: /dockerdata-nfs/{{ .Values.nsPrefix }}/multicloud/vio/logs
+     imagePullSecrets:
+     - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+
+
diff --git a/kubernetes/multicloud/values.yaml b/kubernetes/multicloud/values.yaml
new file mode 100644
index 0000000..26f9592
--- /dev/null
+++ b/kubernetes/multicloud/values.yaml
@@ -0,0 +1,7 @@
+nsPrefix: onap
+pullPolicy: Always
+nodePortPrefix: 302
+image:
+  readiness: oomk8s/readiness-check:1.0.0
+  framework: nexus3.onap.org:10001/onap/multicloud/framework:latest
+  vio: nexus3.onap.org:10001/onap/multicloud/vio:latest
diff --git a/kubernetes/oneclick/createAll.bash b/kubernetes/oneclick/createAll.bash
index 7be2e6a..112366f 100755
--- a/kubernetes/oneclick/createAll.bash
+++ b/kubernetes/oneclick/createAll.bash
@@ -14,7 +14,7 @@
 -a [APP]            : Specify a specific ONAP component (default: all)
                       from the following choices:
                       sdc, aai ,mso, message-router, robot,
-                      vid, sdnc, portal, policy, appc
+                      vid, sdnc, portal, policy, appc, multicloud
 EOF
 }
 
diff --git a/kubernetes/oneclick/deleteAll.bash b/kubernetes/oneclick/deleteAll.bash
index 40d0701..c8759bc 100755
--- a/kubernetes/oneclick/deleteAll.bash
+++ b/kubernetes/oneclick/deleteAll.bash
@@ -28,7 +28,7 @@
 -a [APP]            : Specify a specific ONAP component (default: all)
                       from the following choices:
                       sdc, aai ,mso, message-router, robot,
-                      vid, sdnc, portal, policy, appc
+                      vid, sdnc, portal, policy, appc, multicloud
 EOF
 }
 
diff --git a/kubernetes/oneclick/setenv.bash b/kubernetes/oneclick/setenv.bash
index c52f4d3..c8dcde1 100644
--- a/kubernetes/oneclick/setenv.bash
+++ b/kubernetes/oneclick/setenv.bash
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-HELM_APPS=('mso' 'message-router' 'sdnc' 'vid' 'robot' 'portal' 'policy' 'appc' 'aai' 'sdc' 'dcae' 'log' 'cli')
+HELM_APPS=('mso' 'message-router' 'sdnc' 'vid' 'robot' 'portal' 'policy' 'appc' 'aai' 'sdc' 'dcae' 'log' 'cli' 'multicloud')
 ONAP_DOCKER_REGISTRY=${ONAP_DOCKER_REGISTRY:-nexus3.onap.org:10001}
 ONAP_DOCKER_USER=${ONAP_DOCKER_USER:-docker}
 ONAP_DOCKER_PASS=${ONAP_DOCKER_PASS:-docker}