[DCAEGEN2] Add subproject ves-openapi-manager

Added ves-openapi-manager Helm chart as DCAE component.

Change-Id: I68c4b016f2c97f430867fc5c709531d7a783271f
Signed-off-by: Michal Banka <michal.banka@nokia.com>
Issue-ID: DCAEGEN2-2574
diff --git a/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/Chart.yaml b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/Chart.yaml
new file mode 100644
index 0000000..1ba7695
--- /dev/null
+++ b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/Chart.yaml
@@ -0,0 +1,21 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2021 Nokia. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+
+apiVersion: v1
+description: ONAP DCAE VES OpenApi Manager
+name: dcae-ves-openapi-manager
+version: 7.0.0
diff --git a/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/requirements.yaml b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/requirements.yaml
new file mode 100644
index 0000000..628b6d5
--- /dev/null
+++ b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/requirements.yaml
@@ -0,0 +1,26 @@
+#============LICENSE_START========================================================
+# Copyright (c) 2021 Nokia. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+
+dependencies:
+  - name: common
+    version: ~7.x-0
+    repository: '@local'
+  - name: repositoryGenerator
+    version: ~7.x-0
+    repository: '@local'
+  - name: readinessCheck
+    version: ~7.x-0
+    repository: '@local'
diff --git a/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/templates/deployment.yaml b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/templates/deployment.yaml
new file mode 100644
index 0000000..b244d91
--- /dev/null
+++ b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/templates/deployment.yaml
@@ -0,0 +1,65 @@
+{{/*
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2021 Nokia. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+*/}}
+
+apiVersion: apps/v1
+kind: Deployment
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
+spec:
+  replicas: 1
+  selector: {{- include "common.selectors" . | nindent 4 }}
+  template:
+    metadata: {{- include "common.templateMetadata" . | nindent 6 }}
+    spec:
+      initContainers:
+      {{ include "common.readinessCheck.waitFor" . | indent 6 | trim }}
+      containers:
+        - name: {{ include "common.name" . }}
+          image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources: {{ include "common.resources" . | nindent 12 }}
+          ports: {{ include "common.containerPorts" . | nindent 12 }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{- if eq .Values.liveness.enabled true }}
+          livenessProbe:
+            httpGet:
+              path: {{ .Values.liveness.path }}
+              port: {{ .Values.liveness.port }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end }}
+          env:
+            - name: ASDC_ADDRESS
+              value: {{ .Values.externalServices.sdc_be_https }}
+            - name: SCHEMA_MAP_PATH
+              value: {{ .Values.schemaMap.directory }}/{{ .Values.schemaMap.filename }}
+          volumeMounts:
+            - name: schema-map
+              mountPath: {{ .Values.schemaMap.directory }}/{{ .Values.schemaMap.filename }}
+              subPath: {{ .Values.schemaMap.filename }}
+      volumes:
+        - name: schema-map
+          configMap:
+            name: dcae-external-repo-configmap-schema-map
+            defaultMode: 0755
+            items:
+              - key: {{ .Values.schemaMap.filename }}
+                path: {{ .Values.schemaMap.filename }}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
diff --git a/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/values.yaml b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/values.yaml
new file mode 100644
index 0000000..66978bd
--- /dev/null
+++ b/kubernetes/dcaegen2/components/dcae-ves-openapi-manager/values.yaml
@@ -0,0 +1,67 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2021 Nokia. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+
+# Global values
+global:
+  pullPolicy: Always
+image: onap/org.onap.dcaegen2.platform.ves-openapi-manager:1.0.1
+containerPort: &svc_port 8080
+
+service:
+  ports:
+    - name: &port http
+      port: *svc_port
+
+externalServices:
+  sdc_be_https: "sdc-be:8443"
+
+schemaMap:
+  filename: "schema-map.json"
+  directory: "/app"
+
+liveness:
+  initialDelaySeconds: 30
+  periodSeconds: 30
+  path: /health
+  port: *port
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  # liveness not desirable for Cloudify Manager container
+  enabled: true
+
+readinessCheck:
+  wait_for:
+  - message-router
+  - sdc-be
+
+flavor: small
+resources:
+  small:
+    limits:
+      cpu: 1
+      memory: 1Gi
+    requests:
+      cpu: 1
+      memory: 512Mi
+  large:
+    limits:
+      cpu: 2
+      memory: 2Gi
+    requests:
+      cpu: 1
+      memory: 1Gi
+  unlimited: {}
\ No newline at end of file
diff --git a/kubernetes/dcaegen2/requirements.yaml b/kubernetes/dcaegen2/requirements.yaml
index bbdcb48..eaf9549 100644
--- a/kubernetes/dcaegen2/requirements.yaml
+++ b/kubernetes/dcaegen2/requirements.yaml
@@ -1,4 +1,5 @@
 # Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+# Modifications Copyright © 2021 Nokia
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -52,4 +53,7 @@
     version: ~7.x-0
     repository: 'file://components/dcae-dashboard'
     condition: dcae-dashboard.enabled
-
+  - name: dcae-ves-openapi-manager
+    version: ~7.x-0
+    repository: 'file://components/dcae-ves-openapi-manager'
+    condition: dcae-ves-openapi-manager.enabled
diff --git a/kubernetes/dcaegen2/resources/expected-components.json b/kubernetes/dcaegen2/resources/expected-components.json
index d89203b..6b3a221 100644
--- a/kubernetes/dcaegen2/resources/expected-components.json
+++ b/kubernetes/dcaegen2/resources/expected-components.json
@@ -1,6 +1,6 @@
 [
 {{- $ctx := . }}
-{{- $components := tuple "dcae-cloudify-manager" "dcae-config-binding-service" "dcae-dashboard" "dcae-deployment-handler" "dcae-inventory-api" "dcae-policy-handler" "dcae-servicechange-handler" }}
+{{- $components := tuple "dcae-cloudify-manager" "dcae-config-binding-service" "dcae-dashboard" "dcae-deployment-handler" "dcae-inventory-api" "dcae-policy-handler" "dcae-servicechange-handler" "dcae-ves-openapi-manager" }}
 {{- range $i, $v := $components }}
 {{- if index $ctx.Values . "enabled" }}
 {{- if $i }},{{ end }}
diff --git a/kubernetes/dcaegen2/values.yaml b/kubernetes/dcaegen2/values.yaml
index 232f8b4..340c159 100644
--- a/kubernetes/dcaegen2/values.yaml
+++ b/kubernetes/dcaegen2/values.yaml
@@ -1,6 +1,7 @@
 # Copyright © 2018 Amdocs, Bell Canada
 # Modifications Copyright © 2018-2019 AT&T
 # Modifications Copyright © 2020 Samsung Electronics
+# Modifications Copyright © 2021 Nokia
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -66,3 +67,5 @@
     cloudifyManagerPasswordExternalSecret: *cmPassSecretName
 dcae-servicechange-handler:
   enabled: true
+dcae-ves-openapi-manager:
+  enabled: true
\ No newline at end of file