--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: Service Design and Creation Umbrella Helm charts
name: sdc
-version: 0.1.0
+version: 2.0.0
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: Backend API - Service Design and Creation Helm charts
+name: sdc-be
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
--- /dev/null
+sampleConfigKey=sampleConfigValue
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+apiVersion: extensions/v1beta1
+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:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-es"
+ - --container-name
+ - "sdc-cs"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# - name: {{ include "common.name" . }}-job-completion
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+# command:
+# - python
+# args:
+# - /root/readiness/sdc_check_job_completion.py
+# - --job-name
+# - sdc-config-cassandra
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# volumeMounts:
+# - mountPath: /root/readiness
+# name: sdc-check-job-completion
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort1 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- 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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+# - name: sdc-sdc-es-es
+# mountPath: /usr/share/elasticsearch/data/
+ - name: {{ .Release.Name }}-sdc-environments-configmap
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/lib/jetty/logs
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-logs-2
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-log-be-configmap
+# - name: sdc-sdc-es-es
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
+# - name: sdc-environments
+ configMap:
+ name: {{ include "common.fullname" . }}-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.dataRootDir }}/{{ include "common.namespace" . }}/sdc/logs
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: Service
+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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "8080",
+ "visualRange":"1"
+ },
+ {
+ "serviceName": "sdc-deprecated",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "8080",
+ "visualRange":"1",
+ "path":"/sdc/v1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ #Example internal target port if required
+ #targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: openecomp/sdc-backend:v1.1.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+# username: myusername
+# password: mypassword
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: sdc-be
+ externalPort: 04
+ internalPort: 8443
+ externalPort1: 05
+ internalPort1: 8080
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: Cassandra - Service Design and Creation Helm charts
+name: sdc-cs
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
--- /dev/null
+sampleConfigKey=sampleConfigValue
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+apiVersion: extensions/v1beta1
+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:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-es"
+ - --container-name
+ - "sdc-cs"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# - name: {{ include "common.name" . }}-job-completion
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+# command:
+# - python
+# args:
+# - /root/readiness/sdc_check_job_completion.py
+# - --job-name
+# - sdc-config-cassandra
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# volumeMounts:
+# - mountPath: /root/readiness
+# name: sdc-check-job-completion
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort1 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- 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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+# - name: sdc-sdc-es-es
+# mountPath: /usr/share/elasticsearch/data/
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/lib/jetty/logs
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-logs-2
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-log-be-configmap
+# - name: sdc-sdc-es-es
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
+# - name: sdc-environments
+ configMap:
+ name: {{ include "common.fullname" . }}-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.dataRootDir }}/{{ include "common.namespace" . }}/sdc/logs
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+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 }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
--- /dev/null
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
--- /dev/null
+#apiVersion: extensions/v1beta1
+#kind: Deployment
+#metadata:
+# labels:
+# app: sdc-cs
+# name: sdc-cs
+# namespace: "{{ .Values.nsPrefix }}"
+#spec:
+# selector:
+# matchLabels:
+# app: sdc-cs
+# template:
+# metadata:
+# labels:
+# app: sdc-cs
+# name: sdc-cs
+# spec:
+# initContainers:
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - sdc-es
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: {{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: sdc-cs-readiness
+# containers:
+# - env:
+# - name: ENVNAME
+# value: AUTO
+# - name: HOST_IP
+# valueFrom:
+# fieldRef:
+# fieldPath: status.podIP
+# - name: ES_HEAP_SIZE
+# value: "1024M"
+# image: {{ .Values.image.sdcCassandra }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: sdc-cs
+# volumeMounts:
+# - mountPath: /var/lib/cassandra/
+# name: sdc-sdc-cs-cs
+# - mountPath: /root/chef-solo/environments/
+# name: sdc-environments
+# - mountPath: /etc/localtime
+# name: sdc-localtime
+# readOnly: true
+# - mountPath: /var/lib/jetty/logs
+# name: sdc-logs
+# ports:
+# - containerPort: 9042
+# - containerPort: 9160
+# readinessProbe:
+# tcpSocket:
+# port: 9160
+# initialDelaySeconds: 5
+# periodSeconds: 10
+# volumes:
+# - name: sdc-sdc-cs-cs
+# persistentVolumeClaim:
+# claimName: sdc-cs-db
+# - name: sdc-environments
+# configMap:
+# name : sdc-environments-configmap
+# defaultMode: 0755
+# - name: sdc-localtime
+# hostPath:
+# path: /etc/localtime
+# - name: sdc-logs
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
+# imagePullSecrets:
+# - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+#
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: Service
+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:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort1 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort1 }}
+ targetPort: {{ .Values.service.internalPort1 }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: openecomp/sdc-cassandra:v1.1.0
+
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+# username: myusername
+# password: mypassword
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-cs
+ externalPort: 9042
+ internalPort: 9042
+ externalPort: 9160
+ internalPort: 9160
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: /sdc/sdc-cs/CS
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+description: Elasticsearch - Service Design and Creation Helm charts
+name: sdc-es
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
--- /dev/null
+sampleConfigKey=sampleConfigValue
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+apiVersion: extensions/v1beta1
+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:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-es"
+ - --container-name
+ - "sdc-cs"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# - name: {{ include "common.name" . }}-job-completion
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+# command:
+# - python
+# args:
+# - /root/readiness/sdc_check_job_completion.py
+# - --job-name
+# - sdc-config-cassandra
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# volumeMounts:
+# - mountPath: /root/readiness
+# name: sdc-check-job-completion
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort1 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- 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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+# - name: sdc-sdc-es-es
+# mountPath: /usr/share/elasticsearch/data/
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/lib/jetty/logs
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-logs-2
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-log-be-configmap
+# - name: sdc-sdc-es-es
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
+# - name: sdc-environments
+ configMap:
+ name: {{ include "common.fullname" . }}-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.dataRootDir }}/{{ include "common.namespace" . }}/sdc/logs
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+#apiVersion: extensions/v1beta1
+#kind: Deployment
+#metadata:
+# labels:
+# app: sdc-es
+# name: sdc-es
+# namespace: "{{ .Values.nsPrefix }}"
+#spec:
+# selector:
+# matchLabels:
+# app: sdc-es
+# template:
+# metadata:
+# labels:
+# app: sdc-es
+# name: sdc-es
+# spec:
+# initContainers:
+# - name: sdc-logs-init
+# image: {{ .Values.image.ubuntuInit }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# command:
+# - /bin/bash
+# - "-c"
+# - |
+# mkdir -p /ubuntu-init/ASDC/ASDC-ES/
+# mkdir -p /ubuntu-init/ASDC/ASDC-CS/
+# mkdir -p /ubuntu-init/ASDC/ASDC-KB/
+# mkdir -p /ubuntu-init/ASDC/ASDC-BE/
+# mkdir -p /ubuntu-init/ASDC/ASDC-FE/
+# chmod -R 777 /ubuntu-init/
+# containers:
+# - image: {{ .Values.image.sdcElasticsearch }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: sdc-es
+# env:
+# - name: ENVNAME
+# value: "AUTO"
+# - name: HOST_IP
+# valueFrom:
+# fieldRef:
+# fieldPath: status.podIP
+# - name: ES_HEAP_SIZE
+# value: "1024M"
+# volumeMounts:
+# - name: sdc-logs
+# mountPath: /ubuntu-init/
+# - mountPath: /root/chef-solo/environments/
+# name: sdc-environments
+# - mountPath: /etc/localtime
+# name: sdc-localtime
+# readOnly: true
+# - mountPath: /var/lib/jetty/logs
+# name: sdc-logs
+# ports:
+# - containerPort: 9200
+# - containerPort: 9300
+# readinessProbe:
+# tcpSocket:
+# port: 9200
+# initialDelaySeconds: 5
+# periodSeconds: 10
+# volumes:
+# - name: sdc-environments
+# configMap :
+# name : sdc-environments-configmap
+# defaultMode: 0755
+# - name: sdc-localtime
+# hostPath:
+# path: /etc/localtime
+# - name: sdc-logs
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
+# imagePullSecrets:
+# - name: "{{ .Values.nsPrefix }}-docker-registry-key"
--- /dev/null
+apiVersion: v1
+kind: Service
+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:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: openecomp/sdc-elasticsearch:v1.1.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+# username: myusername
+# password: mypassword
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-es
+ externalPort: 9200
+ internalPort: 9200
+ externalPort: 9300
+ internalPort: 9300
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
--- /dev/null
+apiVersion: v1
+description: UI - Service Design and Creation Helm charts
+name: sdc-fe
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
--- /dev/null
+sampleConfigKey=sampleConfigValue
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+apiVersion: extensions/v1beta1
+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:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-es"
+ - --container-name
+ - "sdc-cs"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# - name: {{ include "common.name" . }}-job-completion
+# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+# imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+# command:
+# - python
+# args:
+# - /root/readiness/sdc_check_job_completion.py
+# - --job-name
+# - sdc-config-cassandra
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# volumeMounts:
+# - mountPath: /root/readiness
+# name: sdc-check-job-completion
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort1 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- 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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+# - name: sdc-sdc-es-es
+# mountPath: /usr/share/elasticsearch/data/
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/lib/jetty/logs
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-logs-2
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-log-be-configmap
+# - name: sdc-sdc-es-es
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
+# - name: sdc-environments
+ configMap:
+ name: {{ include "common.fullname" . }}-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.dataRootDir }}/{{ include "common.namespace" . }}/sdc/logs
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+#apiVersion: extensions/v1beta1
+#kind: Deployment
+#metadata:
+# labels:
+# app: sdc-fe
+# name: sdc-fe
+# namespace: "{{ .Values.nsPrefix }}"
+#spec:
+# selector:
+# matchLabels:
+# app: sdc-fe
+# template:
+# metadata:
+# labels:
+# app: sdc-fe
+# name: sdc-fe
+# spec:
+# initContainers:
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - sdc-es
+# - --container-name
+# - sdc-cs
+# - --container-name
+# - sdc-kb
+# - --container-name
+# - sdc-be
+# env:
+# - name: NAMESPACE
+# valueFrom:
+# fieldRef:
+# apiVersion: v1
+# fieldPath: metadata.namespace
+# image: {{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: sdc-fe-readiness
+# containers:
+# - name: sdc-fe
+# env:
+# - name: ENVNAME
+# value: AUTO
+# - name: HOST_IP
+# valueFrom:
+# fieldRef:
+# fieldPath: status.podIP
+# image: {{ .Values.image.sdcFrontend }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# volumeMounts:
+# - mountPath: /usr/share/elasticsearch/data/
+# name: sdc-sdc-es-es
+# - mountPath: /root/chef-solo/environments/
+# name: sdc-environments
+# - mountPath: /etc/localtime
+# name: sdc-localtime
+# readOnly: true
+# - mountPath: /var/lib/jetty/logs
+# name: sdc-logs
+# - mountPath: /var/log/onap
+# name: sdc-logs-2
+# - mountPath: /root/chef-solo/cookbooks/sdc-catalog-fe/recipes/FE_2_setup_configuration.rb
+# name: sdc-fe-config
+# subPath: FE_2_setup_configuration.rb
+# - mountPath: /tmp/logback.xml
+# name: sdc-logback
+# lifecycle:
+# postStart:
+# exec:
+# command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+# ports:
+# - containerPort: 9443
+# - containerPort: 8181
+# readinessProbe:
+# tcpSocket:
+# port: 8181
+# initialDelaySeconds: 5
+# periodSeconds: 10
+# - image: {{ .Values.image.filebeat }}
+# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+# name: filebeat-onap
+# volumeMounts:
+# - mountPath: /usr/share/filebeat/filebeat.yml
+# name: filebeat-conf
+# subPath: filebeat.yml
+# - mountPath: /var/log/onap
+# name: sdc-logs-2
+# - mountPath: /usr/share/filebeat/data
+# name: sdc-data-filebeat
+# volumes:
+# - name: filebeat-conf
+# configMap:
+# name : sdc-filebeat-configmap
+# - name: sdc-logs-2
+# emptyDir: {}
+# - name: sdc-data-filebeat
+# emptyDir: {}
+# - name: sdc-logback
+# configMap:
+# name : sdc-log-fe-configmap
+# - name: sdc-sdc-es-es
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
+# - name: sdc-environments
+# configMap:
+# name: sdc-environments-configmap
+# defaultMode: 0755
+# - name: sdc-localtime
+# hostPath:
+# path: /etc/localtime
+# - name: sdc-logs
+# hostPath:
+# path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
+# - name: sdc-fe-config
+# configMap:
+# name: sdc-fe-configmap
+# defaultMode: 0755
+# imagePullSecrets:
+# - name: "{{ .Values.nsPrefix }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: Service
+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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc-gui",
+ "version": "v1",
+ "url": "/sdc1",
+ "protocol": "UI",
+ "port": "8181",
+ "visualRange":"0|1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort1 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort1 }}
+ targetPort: {{ .Values.service.internalPort1 }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: openecomp/sdc-frontend:v1.1.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+# username: myusername
+# password: mypassword
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: sdc-fe
+ externalPort: 9443
+ internalPort: 9443
+ nodePort: 07
+ externalPort1: 8181
+ internalPort1: 8181
+ nodePort1: 06
+
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
+
+
+#TODO:REMOVE
+sdc-kb.yaml
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+description: Kibana - Service Design and Creation Helm charts
+name: sdc-kb
+version: 2.0.0
\ No newline at end of file
--- /dev/null
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
--- /dev/null
+sampleConfigKey=sampleConfigValue
\ No newline at end of file
--- /dev/null
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
--- /dev/null
+apiVersion: extensions/v1beta1
+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:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-es"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- 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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: ELASTICSEARCH_URL
+ # TODO: Parameterize this somehow
+ value: http://sdc-es:9200
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/lib/jetty/logs
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+
+ # side car containers
+ - name: {{ include "common.name" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-logs-2
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: sdc-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: Service
+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:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
\ No newline at end of file
--- /dev/null
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: openecomp/sdc-kibana:v1.1.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+# username: myusername
+# password: mypassword
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-kb
+ externalPort: 5601
+ internalPort: 5601
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
--- /dev/null
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
\ No newline at end of file
"chef_type": "environment",
"default_attributes": {
- "CS_VIP": "sdc-cs.{{.Values.nsPrefix}}",
- "BE_VIP": "sdc-be.{{.Values.nsPrefix}}",
- "FE_VIP": "sdc-fe.{{.Values.nsPrefix}}",
- "ES_VIP": "sdc-es.{{.Values.nsPrefix}}",
+ "CS_VIP": "sdc-cs.{{include "common.namespace" .}}",
+ "BE_VIP": "sdc-be.{{include "common.namespace" .}}",
+ "FE_VIP": "sdc-fe.{{include "common.namespace" .}}",
+ "ES_VIP": "sdc-es.{{include "common.namespace" .}}",
"interfaces": {
"application": "eth0",
"private": "eth0"
},
"ECompP": {
- "ecomp_rest_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi",
- "ueb_url_list": "dmaap.{{.Values.nsPrefix}}, dmaap.{{.Values.nsPrefix}}",
+ "ecomp_rest_url": "http://portalapps.{{include "common.namespace" .}}:8989/ONAPPORTAL/auxapi",
+ "ueb_url_list": "dmaap.{{include "common.namespace" .}}, dmaap.{{include "common.namespace" .}}",
"app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
"app_key": "x9UfO7JsDn8BESVX",
"inbox_name": "ECOMP-PORTAL-INBOX",
- "ecomp_redirect_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm",
+ "ecomp_redirect_url": "http://portalapps.{{include "common.namespace" .}}:8989/ONAPPORTAL/login.htm",
"app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
"decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
},
"UEB": {
"PublicKey": "iPIxkpAMI8qTcQj8",
"SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
- "fqdn": ["dmaap.{{.Values.nsPrefix}}", "dmaap.{{.Values.nsPrefix}}"]
+ "fqdn": ["dmaap.{{include "common.namespace" .}}", "dmaap.{{include "common.namespace" .}}"]
},
"Nodes": {
- "CS": "sdc-cs.{{.Values.nsPrefix}}",
- "BE": "sdc-be.{{.Values.nsPrefix}}",
- "FE": "sdc-fe.{{.Values.nsPrefix}}",
- "ES": "sdc-es.{{.Values.nsPrefix}}"
+ "CS": "sdc-cs.{{include "common.namespace" .}}",
+ "BE": "sdc-be.{{include "common.namespace" .}}",
+ "FE": "sdc-fe.{{include "common.namespace" .}}",
+ "ES": "sdc-es.{{include "common.namespace" .}}"
}
},
"override_attributes": {
"private": "eth1"
},
"ECompP": {
- "ecomp_rest_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi",
- "ueb_url_list": "dmaap.{{.Values.nsPrefix}},dmaap.{{.Values.nsPrefix}}",
+ "ecomp_rest_url": "http://portalapps.{{include "common.namespace" .}}:8989/ONAPPORTAL/auxapi",
+ "ueb_url_list": "dmaap.{{include "common.namespace" .}},dmaap.{{include "common.namespace" .}}",
"app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
"app_key": "x9UfO7JsDn8BESVX",
"inbox_name": "ECOMP-PORTAL-INBOX",
- "ecomp_redirect_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm",
+ "ecomp_redirect_url": "http://portalapps.{{include "common.namespace" .}}:8989/ONAPPORTAL/login.htm",
"app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
"decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
},
"UEB": {
"PublicKey": "iPIxkpAMI8qTcQj8",
"SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
- "fqdn": ["dmaap.{{.Values.nsPrefix}}", "dmaap.{{.Values.nsPrefix}}"]
+ "fqdn": ["dmaap.{{include "common.namespace" .}}", "dmaap.{{include "common.namespace" .}}"]
},
"Nodes": {
"CS": "yyy",
#List of logstash server ip addresses with port number.
#But, in our case, this will be the loadbalancer IP address.
#For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
- hosts: ["logstash.{{.Values.nsPrefix}}:5044"]
+ hosts: ["logstash.{{include "common.namespace" .}}:5044"]
#If enable will do load balancing among availabe Logstash, automatically.
loadbalance: true
mode "0755"
variables({
:fe_host_ip => node['HOST_IP'],
- :be_host_ip => "sdc-be.{{.Values.nsPrefix}}",
+ :be_host_ip => "sdc-be.{{include "common.namespace" .}}",
:catalog_port => node['BE'][:http_port],
:ssl_port => node['BE'][:https_port]
})
+++ /dev/null
-#{{ if not .Values.disableSdcSdcEs }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-es
- name: sdc-es
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-es-port-9200
- port: 9200
- - name: sdc-es-port-9300
- port: 9300
- selector:
- app: sdc-es
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcCs }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-cs-port-9042
- port: 9042
- - name: sdc-cs-port-9160
- port: 9160
- selector:
- app: sdc-cs
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcKb }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-kb-port-5601
- port: 5601
- selector:
- app: sdc-kb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcBe }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-be
- name: sdc-be
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdc",
- "version": "v1",
- "url": "/sdc/v1",
- "protocol": "REST",
- "port": "8080",
- "visualRange":"1"
- },
- {
- "serviceName": "sdc-deprecated",
- "version": "v1",
- "url": "/sdc/v1",
- "protocol": "REST",
- "port": "8080",
- "visualRange":"1",
- "path":"/sdc/v1"
- }
- ]'
-spec:
- ports:
- - name: sdc-be-port-8443
- nodePort: {{ .Values.nodePortPrefix }}04
- port: 8443
- - name: sdc-be-port-8080
- nodePort: {{ .Values.nodePortPrefix }}05
- port: 8080
- selector:
- app: sdc-be
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableSdcSdcFe }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdc-gui",
- "version": "v1",
- "url": "/sdc1",
- "protocol": "UI",
- "port": "8181",
- "visualRange":"0|1"
- }
- ]'
-spec:
- ports:
- - name: sdc-fe-port-9443
- nodePort: {{ .Values.nodePortPrefix }}07
- port: 9443
- - name: sdc-fe-port-8181
- nodePort: {{ .Values.nodePortPrefix }}06
- port: 8181
- selector:
- app: sdc-fe
- type: NodePort
-#{{ end }}
\ No newline at end of file
--- /dev/null
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/environments/*").AsConfig . | indent 2 }}
\ No newline at end of file
+++ /dev/null
-#{{ if not .Values.disableSdcSdcBe }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-be
- name: sdc-be
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-be
- template:
- metadata:
- labels:
- app: sdc-be
- name: sdc-be
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- - --container-name
- - sdc-kb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-be-readiness
- - command:
- - /root/ready.py
- args:
- - --container-name
- - dmaap
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-dmaap-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- image: {{ .Values.image.sdcBackend }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-be
- volumeMounts:
- - mountPath: /usr/share/elasticsearch/data/
- name: sdc-sdc-es-es
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /tmp/logback.xml
- name: sdc-logback
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 8443
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8443
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /usr/share/filebeat/data
- name: sdc-data-filebeat
- volumes:
- - name: filebeat-conf
- configMap:
- name: sdc-filebeat-configmap
- - name: sdc-logs-2
- emptyDir: {}
- - name: sdc-data-filebeat
- emptyDir: {}
- - name: sdc-logback
- configMap:
- name : sdc-log-be-configmap
- - name: sdc-sdc-es-es
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-#{{ if not .Values.disableSdcSdcCs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-cs
- template:
- metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-cs-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: ES_HEAP_SIZE
- value: "1024M"
- image: {{ .Values.image.sdcCassandra }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-cs
- volumeMounts:
- - mountPath: /var/lib/cassandra/
- name: sdc-sdc-cs-cs
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 9042
- - containerPort: 9160
- readinessProbe:
- tcpSocket:
- port: 9160
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-sdc-cs-cs
- persistentVolumeClaim:
- claimName: sdc-cs-db
- - name: sdc-environments
- configMap:
- name : sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-#{{ if not .Values.disableSdcSdcBe }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sdc-environments-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/environments/*").AsConfig . | indent 2 }}
-#{{ end }}
+++ /dev/null
-#{{ if not .Values.disableSdcSdcEs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-es
- name: sdc-es
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-es
- template:
- metadata:
- labels:
- app: sdc-es
- name: sdc-es
- spec:
- initContainers:
- - name: sdc-logs-init
- image: {{ .Values.image.ubuntuInit }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - /bin/bash
- - "-c"
- - |
- mkdir -p /ubuntu-init/ASDC/ASDC-ES/
- mkdir -p /ubuntu-init/ASDC/ASDC-CS/
- mkdir -p /ubuntu-init/ASDC/ASDC-KB/
- mkdir -p /ubuntu-init/ASDC/ASDC-BE/
- mkdir -p /ubuntu-init/ASDC/ASDC-FE/
- chmod -R 777 /ubuntu-init/
- containers:
- - image: {{ .Values.image.sdcElasticsearch }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-es
- env:
- - name: ENVNAME
- value: "AUTO"
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: ES_HEAP_SIZE
- value: "1024M"
- volumeMounts:
- - name: sdc-logs
- mountPath: /ubuntu-init/
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 9200
- - containerPort: 9300
- readinessProbe:
- tcpSocket:
- port: 9200
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-environments
- configMap :
- name : sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-#{{ if not .Values.disableSdcSdcFe }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-fe
- template:
- metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- - --container-name
- - sdc-kb
- - --container-name
- - sdc-be
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-fe-readiness
- containers:
- - name: sdc-fe
- env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- image: {{ .Values.image.sdcFrontend }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /usr/share/elasticsearch/data/
- name: sdc-sdc-es-es
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /root/chef-solo/cookbooks/sdc-catalog-fe/recipes/FE_2_setup_configuration.rb
- name: sdc-fe-config
- subPath: FE_2_setup_configuration.rb
- - mountPath: /tmp/logback.xml
- name: sdc-logback
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 9443
- - containerPort: 8181
- readinessProbe:
- tcpSocket:
- port: 8181
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /usr/share/filebeat/data
- name: sdc-data-filebeat
- volumes:
- - name: filebeat-conf
- configMap:
- name : sdc-filebeat-configmap
- - name: sdc-logs-2
- emptyDir: {}
- - name: sdc-data-filebeat
- emptyDir: {}
- - name: sdc-logback
- configMap:
- name : sdc-log-fe-configmap
- - name: sdc-sdc-es-es
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- - name: sdc-fe-config
- configMap:
- name: sdc-fe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-#{{ if not .Values.disableSdcSdcKb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-kb
- template:
- metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-kb-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: ELASTICSEARCH_URL
- value: http://sdc-es:9200
- image: {{ .Values.image.sdcKibana }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-kb
- volumeMounts:
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 5601
- readinessProbe:
- tcpSocket:
- port: 5601
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
+++ /dev/null
-#{{ if not .Values.disableSdcSdcCs }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-sdc"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-sdc"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-cs/CS
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: sdc-cs-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-sdc"
-#{{ end }}
-nsPrefix: onap
+#nsPrefix: onap
pullPolicy: Always
nodePortPrefix: 302
dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- sdcKibana: nexus3.onap.org:10001/openecomp/sdc-kibana:v1.1.0
- sdcFrontend: nexus3.onap.org:10001/openecomp/sdc-frontend:v1.1.0
- sdcElasticsearch: nexus3.onap.org:10001/openecomp/sdc-elasticsearch:v1.1.0
- sdcCassandra: nexus3.onap.org:10001/openecomp/sdc-cassandra:v1.1.0
- sdcBackend: nexus3.onap.org:10001/openecomp/sdc-backend:v1.1.0
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
- ubuntuInit: oomk8s/ubuntu-init:1.0.0
+#image:
+# readiness: oomk8s/readiness-check:1.1.0
+# filebeat: docker.elastic.co/beats/filebeat:5.5.0
+# ubuntuInit: oomk8s/ubuntu-init:1.0.0
+global:
+ env:
+ name: AUTO
+
+secrets:
+ sdc_user: YXNkY191c2Vy
+ sdc_password: QWExMjM0JV4h
+ cs_password: b25hcDEyMyNAIQ==