From 646446fdd7a37124e4d5d31cf855296cf2ec8024 Mon Sep 17 00:00:00 2001 From: Rajamohan Raj Date: Tue, 18 Jun 2019 22:29:41 +0000 Subject: Helmize the sample promql_query_app Release a helm chart and dockerfile for the sample promql_query_app Issue-ID: ONAPARC-508 Signed-off-by: Rajamohan Raj Change-Id: I8fdddd3fe0094c132a485c1d40b524b8a8cb2062 --- .../sample-apps/m3db_promql/templates/_helpers.tpl | 32 +++++++++ .../templates/configmap_promql_app_env.yaml | 6 ++ .../m3db_promql/templates/deployment.yaml | 84 ++++++++++++++++++++++ .../sample-apps/m3db_promql/templates/secrets.yaml | 31 ++++++++ .../m3db_promql/templates/serviceaccount.yaml | 25 +++++++ 5 files changed, 178 insertions(+) create mode 100755 vnfs/DAaaS/sample-apps/m3db_promql/templates/_helpers.tpl create mode 100644 vnfs/DAaaS/sample-apps/m3db_promql/templates/configmap_promql_app_env.yaml create mode 100644 vnfs/DAaaS/sample-apps/m3db_promql/templates/deployment.yaml create mode 100644 vnfs/DAaaS/sample-apps/m3db_promql/templates/secrets.yaml create mode 100644 vnfs/DAaaS/sample-apps/m3db_promql/templates/serviceaccount.yaml (limited to 'vnfs/DAaaS/sample-apps/m3db_promql/templates') diff --git a/vnfs/DAaaS/sample-apps/m3db_promql/templates/_helpers.tpl b/vnfs/DAaaS/sample-apps/m3db_promql/templates/_helpers.tpl new file mode 100755 index 00000000..f3ee5322 --- /dev/null +++ b/vnfs/DAaaS/sample-apps/m3db_promql/templates/_helpers.tpl @@ -0,0 +1,32 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "promql_query_app.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "promql_query_app.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "promql_query_app.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} diff --git a/vnfs/DAaaS/sample-apps/m3db_promql/templates/configmap_promql_app_env.yaml b/vnfs/DAaaS/sample-apps/m3db_promql/templates/configmap_promql_app_env.yaml new file mode 100644 index 00000000..1f54f341 --- /dev/null +++ b/vnfs/DAaaS/sample-apps/m3db_promql/templates/configmap_promql_app_env.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: configmap_promql_app_env +data: + DATA_ENDPOINT: {{ .Values.prometheus.serverURL }} \ No newline at end of file diff --git a/vnfs/DAaaS/sample-apps/m3db_promql/templates/deployment.yaml b/vnfs/DAaaS/sample-apps/m3db_promql/templates/deployment.yaml new file mode 100644 index 00000000..99a4e2ad --- /dev/null +++ b/vnfs/DAaaS/sample-apps/m3db_promql/templates/deployment.yaml @@ -0,0 +1,84 @@ +{{/* +# 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: extensions/v1beta1 +kind: Deployment +metadata: + name: {{ include "promql_query_app.fullname" . }} + labels: + app: {{ include "promql_query_app.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service | quote }} +spec: + replicas: 1 + selector: + matchLabels: + app: {{ include "promql_query_app.name" . }} + release: {{ .Release.Name }} + modelName: {{ .Values.modelName }} + template: + metadata: + labels: + app: {{ include "promql_query_app.name" . }} + release: {{ .Release.Name }} + modelName: {{ .Values.modelName }} + spec: + serviceAccountName: {{ template "promql_query_app.serviceAccountName" . }} + containers: + - name: promql_query_app + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: DATA_ENDPOINT + valueFrom: + configMapKeyRef: + name: configmap_promql_app_env + key: DATA_ENDPOINT + - name: AWS_ACCESS_KEY_ID + valueFrom: + secretKeyRef: + name: {{ if .Values.minio.existingSecret }}{{ .Values.minio.existingSecret }}{{ else }}{{ template "promql_query_app.fullname" . }}{{ end }} + key: accesskey + - name: AWS_SECRET_ACCESS_KEY + valueFrom: + secretKeyRef: + name: {{ if .Values.minio.existingSecret }}{{ .Values.minio.existingSecret }}{{ else }}{{ template "promql_query_app.fullname" . }}{{ end }} + key: secretkey + {{- range $key, $val := .Values.minio.environment }} + - name: {{ $key }} + value: {{ $val | quote }} + {{- end}} + resources: + {{ toYaml .Values.resources | indent 12 }} + volumeMounts: + - mountPath: /models + name: models + volumes: + - name: models + emptyDir: {} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/vnfs/DAaaS/sample-apps/m3db_promql/templates/secrets.yaml b/vnfs/DAaaS/sample-apps/m3db_promql/templates/secrets.yaml new file mode 100644 index 00000000..60717a65 --- /dev/null +++ b/vnfs/DAaaS/sample-apps/m3db_promql/templates/secrets.yaml @@ -0,0 +1,31 @@ +{{/* +# 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. +*/}} + +{{- if not .Values.minio.existingSecret }} +apiVersion: v1 +kind: Secret +metadata: + name: {{ template "model-loader.fullname" . }} + labels: + app: {{ include "model-loader.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service | quote }} +type: Opaque +data: + accesskey: {{ .Values.minio.accessKey | b64enc }} + secretkey: {{ .Values.minio.secretKey | b64enc }} +{{- end }} diff --git a/vnfs/DAaaS/sample-apps/m3db_promql/templates/serviceaccount.yaml b/vnfs/DAaaS/sample-apps/m3db_promql/templates/serviceaccount.yaml new file mode 100644 index 00000000..1573ae94 --- /dev/null +++ b/vnfs/DAaaS/sample-apps/m3db_promql/templates/serviceaccount.yaml @@ -0,0 +1,25 @@ +{{/* +# 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: ServiceAccount +metadata: + name: {{ include "model-loader.fullname" . }} + labels: + app: {{ include "model-loader.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service | quote }} -- cgit 1.2.3-korg