summaryrefslogtreecommitdiffstats
path: root/deployments/helm/v2/emco/ovnaction
diff options
context:
space:
mode:
authorTodd Malsbary <todd.malsbary@intel.com>2020-08-07 10:20:12 -0700
committerRitu Sood <ritu.sood@intel.com>2020-09-23 20:00:03 +0000
commit2cbcccc6d06324f3c91306ed73f262b631457a23 (patch)
treea9365925c2b1362c0cafec15cb79e9446e1c470c /deployments/helm/v2/emco/ovnaction
parent18c0ffea7babfcda74e4367413a331259c406c10 (diff)
Add playbooks for v2 emco chart.
Rename v2/onap4k8s to v2/emco, and rename sanity-check-for-v2.sh to emco.sh. This allows --plugins emco to be passed to installer.sh in place of --plugins onap4k8s. Issue-ID: MULTICLOUD-1181 Signed-off-by: Todd <todd.malsbary@intel.com> Change-Id: Idb427a8aa4c8aaff181965a540078c8cf6dd88aa
Diffstat (limited to 'deployments/helm/v2/emco/ovnaction')
-rw-r--r--deployments/helm/v2/emco/ovnaction/Chart.yaml18
-rw-r--r--deployments/helm/v2/emco/ovnaction/requirements.yaml18
-rw-r--r--deployments/helm/v2/emco/ovnaction/resources/config/config.json6
-rw-r--r--deployments/helm/v2/emco/ovnaction/templates/configmap.yaml28
-rw-r--r--deployments/helm/v2/emco/ovnaction/templates/deployment.yaml85
-rw-r--r--deployments/helm/v2/emco/ovnaction/templates/service.yaml49
-rw-r--r--deployments/helm/v2/emco/ovnaction/values.yaml93
7 files changed, 297 insertions, 0 deletions
diff --git a/deployments/helm/v2/emco/ovnaction/Chart.yaml b/deployments/helm/v2/emco/ovnaction/Chart.yaml
new file mode 100644
index 00000000..9047dd0f
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright 2019 Intel Corporation, Inc
+#
+# 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.
+
+apiVersion: v1
+description: Ovn Action Controller
+name: ovnaction
+version: 0.1.0
diff --git a/deployments/helm/v2/emco/ovnaction/requirements.yaml b/deployments/helm/v2/emco/ovnaction/requirements.yaml
new file mode 100644
index 00000000..c2253cf4
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/requirements.yaml
@@ -0,0 +1,18 @@
+# Copyright 2019 Intel Corporation, Inc
+#
+# 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.
+
+dependencies:
+ - name: common
+ version: ~0.x-0
+ repository: '@local'
diff --git a/deployments/helm/v2/emco/ovnaction/resources/config/config.json b/deployments/helm/v2/emco/ovnaction/resources/config/config.json
new file mode 100644
index 00000000..1fdfafce
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/resources/config/config.json
@@ -0,0 +1,6 @@
+{
+ "database-type": "mongo",
+ "database-ip": "emco-mongo",
+ "etcd-ip": "emco-etcd",
+ "service-port": "9051"
+} \ No newline at end of file
diff --git a/deployments/helm/v2/emco/ovnaction/templates/configmap.yaml b/deployments/helm/v2/emco/ovnaction/templates/configmap.yaml
new file mode 100644
index 00000000..c9d55fed
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/templates/configmap.yaml
@@ -0,0 +1,28 @@
+{{/*
+# Copyright 2019 Intel Corporation, Inc
+#
+# 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.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/deployments/helm/v2/emco/ovnaction/templates/deployment.yaml b/deployments/helm/v2/emco/ovnaction/templates/deployment.yaml
new file mode 100644
index 00000000..261b6ef2
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/templates/deployment.yaml
@@ -0,0 +1,85 @@
+{{/*
+# Copyright 2019 Intel Corporation, Inc
+#
+# 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.
+*/}}
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}
+ command: [{{ .Values.command }}]
+ args: [{{ .Values.args }}]
+ workingDir: {{ .Values.workingDir }}
+ ports:
+ - containerPort: {{ .Values.serviceInternal.internalPort }}
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/emco/config.json
+ name: {{ include "common.name" .}}
+ subPath: config.json
+ resources:
+{{ include "common.resources" . }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name : {{ include "common.name" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/deployments/helm/v2/emco/ovnaction/templates/service.yaml b/deployments/helm/v2/emco/ovnaction/templates/service.yaml
new file mode 100644
index 00000000..9bf887ed
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/templates/service.yaml
@@ -0,0 +1,49 @@
+{{/*
+# Copyright 2020 Intel Corporation, Inc
+#
+# 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.
+*/}}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - name: {{ .Values.serviceInternal.portName }}
+ {{if eq .Values.serviceInternal.type "NodePort" -}}
+ port: {{ .Values.serviceInternal.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefixExt | default "302" }}{{ .Values.serviceInternal.nodePort }}
+ {{- else -}}
+ port: {{ .Values.serviceInternal.externalPort }}
+ targetPort: {{ .Values.serviceInternal.internalPort }}
+ {{- end}}
+ protocol: TCP
+ - name: {{ .Values.service.portName }}
+ {{if eq .Values.service.type "NodePort" -}}
+ port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefixExt | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }} \ No newline at end of file
diff --git a/deployments/helm/v2/emco/ovnaction/values.yaml b/deployments/helm/v2/emco/ovnaction/values.yaml
new file mode 100644
index 00000000..a617f847
--- /dev/null
+++ b/deployments/helm/v2/emco/ovnaction/values.yaml
@@ -0,0 +1,93 @@
+# Copyright 2019 Intel Corporation, Inc
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefixExt: 304
+ persistence: {}
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: registry.hub.docker.com
+image: emcov2/emco:stable
+pullPolicy: Always
+command: "/opt/emco/entrypoint"
+args: "ovnaction"
+workingDir: /opt/emco
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration is via config files
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 30
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 30
+
+service:
+ type: NodePort
+ name: ovnaction
+ portName: http
+ internalPort: 9051
+ externalPort: 9051
+ nodePort: 71
+
+serviceInternal:
+ type: NodePort
+ name: internal
+ portName: internal
+ internalPort: 9053
+ externalPort: 9053
+ nodePort: 73
+
+ingress:
+ enabled: false
+
+# Configure resource requests and limits
+flavor: large
+resources:
+ small:
+ limits:
+ cpu: 200m
+ memory: 500Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ large:
+ limits:
+ cpu: 400m
+ memory: 1Gi
+ requests:
+ cpu: 10m
+ memory: 100Mi
+ unlimited: {}