From 3d4874884ff9d487e14f82bf08c4c2c6d01be90e Mon Sep 17 00:00:00 2001 From: Michal Banka Date: Thu, 11 Feb 2021 10:36:47 +0100 Subject: [PATCH 1/1] [DCAEGEN2] Add subproject ves-openapi-manager Added ves-openapi-manager Helm chart as DCAE component. Change-Id: I68c4b016f2c97f430867fc5c709531d7a783271f Signed-off-by: Michal Banka Issue-ID: DCAEGEN2-2574 --- .../components/dcae-ves-openapi-manager/Chart.yaml | 21 +++++++ .../dcae-ves-openapi-manager/requirements.yaml | 26 +++++++++ .../templates/deployment.yaml | 65 +++++++++++++++++++++ .../dcae-ves-openapi-manager/values.yaml | 67 ++++++++++++++++++++++ kubernetes/dcaegen2/requirements.yaml | 6 +- .../dcaegen2/resources/expected-components.json | 2 +- kubernetes/dcaegen2/values.yaml | 3 + 7 files changed, 188 insertions(+), 2 deletions(-) create mode 100644 kubernetes/dcaegen2/components/dcae-ves-openapi-manager/Chart.yaml create mode 100644 kubernetes/dcaegen2/components/dcae-ves-openapi-manager/requirements.yaml create mode 100644 kubernetes/dcaegen2/components/dcae-ves-openapi-manager/templates/deployment.yaml create mode 100644 kubernetes/dcaegen2/components/dcae-ves-openapi-manager/values.yaml 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 0000000000..1ba7695a30 --- /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 0000000000..628b6d54cd --- /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 0000000000..b244d91ff5 --- /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 0000000000..66978bdc0f --- /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 bbdcb4815c..eaf9549af5 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 @@ dependencies: 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 d89203b070..6b3a221661 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 232f8b45d5..340c159a2f 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 @@ dcae-policy-handler: cloudifyManagerPasswordExternalSecret: *cmPassSecretName dcae-servicechange-handler: enabled: true +dcae-ves-openapi-manager: + enabled: true \ No newline at end of file -- 2.16.6