From a57d8dd090a3d3d747ba40ef58e14215e88adfa2 Mon Sep 17 00:00:00 2001 From: Mandeep Khinda Date: Fri, 9 Mar 2018 14:29:37 +0000 Subject: iterating on new helm structure for SO with this change we can now do the following: can deploy umbrella chart with currently working components: helm install local/onap --name onap --namespace onap-all helm install local/onap --name onap-2 --namespace onap-all-2 \ --set global.nodePortPrefix=303 - umbrella includes setup chart can deploy a-la-carte component by component into a single namespace - Need to deploy a setup chart first. cannot be made a helm dependency as there will be conflicts if each app chart has the same setup dependency. helm install local/setup --name onap-setup --namespace onap-apps helm install local/so --name so1 --namespace onap-apps \ --set global.nodePortPrefix=304 helm list NAME REVISION STATUS CHART NAMESPACE onap 1 DEPLOYED onap-2.0.0 onap-all onap-2 1 DEPLOYED onap-2.0.0 onap-all-2 onap-setup 1 DEPLOYED setup-2.0.0 onap-apps so1 1 DEPLOYED so-2.0.0 onap-apps Unfortunately, the config maps all have fixed names, so installing the same app in the a-la-carte fashion will fail due to a collision. Not worrying about this as I'm not sure we want to support this. -made the common and setup charts standalone to remove relative file paths from requirements.yaml This will help when there are different levels of subcharts that need to include common Issue-ID: OOM-786 Issue-ID: OOM-789 Issue-ID: OOM-788 Change-Id: I20bacae6f0f20e8f3bb1527af1e7e53f187341d5 Signed-off-by: Mandeep Khinda --- kubernetes/common/.helmignore | 21 +++++++++++++++ kubernetes/common/Chart.yaml | 4 +++ kubernetes/common/Makefile | 25 ----------------- kubernetes/common/common-templates/.helmignore | 21 --------------- kubernetes/common/common-templates/Chart.yaml | 4 --- .../common/common-templates/templates/_name.tpl | 15 ----------- .../common-templates/templates/_namespace.tpl | 11 -------- kubernetes/common/common-templates/values.yaml | 31 ---------------------- kubernetes/common/templates/_name.tpl | 15 +++++++++++ kubernetes/common/templates/_namespace.tpl | 10 +++++++ kubernetes/common/values.yaml | 31 ++++++++++++++++++++++ 11 files changed, 81 insertions(+), 107 deletions(-) create mode 100644 kubernetes/common/.helmignore create mode 100644 kubernetes/common/Chart.yaml delete mode 100644 kubernetes/common/Makefile delete mode 100644 kubernetes/common/common-templates/.helmignore delete mode 100644 kubernetes/common/common-templates/Chart.yaml delete mode 100644 kubernetes/common/common-templates/templates/_name.tpl delete mode 100644 kubernetes/common/common-templates/templates/_namespace.tpl delete mode 100644 kubernetes/common/common-templates/values.yaml create mode 100644 kubernetes/common/templates/_name.tpl create mode 100644 kubernetes/common/templates/_namespace.tpl create mode 100644 kubernetes/common/values.yaml (limited to 'kubernetes/common') diff --git a/kubernetes/common/.helmignore b/kubernetes/common/.helmignore new file mode 100644 index 0000000000..f0c1319444 --- /dev/null +++ b/kubernetes/common/.helmignore @@ -0,0 +1,21 @@ +# 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 diff --git a/kubernetes/common/Chart.yaml b/kubernetes/common/Chart.yaml new file mode 100644 index 0000000000..aed57348e0 --- /dev/null +++ b/kubernetes/common/Chart.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +description: Common templates for inclusion in other charts +name: common +version: 2.0.0 diff --git a/kubernetes/common/Makefile b/kubernetes/common/Makefile deleted file mode 100644 index 1900f31a44..0000000000 --- a/kubernetes/common/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -EXCLUDES := test -HELM_CHARTS := $(filter-out $(EXCLUDES), $(patsubst %/.,%,$(wildcard */.))) - -.PHONY: $(EXCLUDES) $(HELM_CHARTS) - -all: $(HELM_CHARTS) - -$(HELM_CHARTS): - @echo "\n[$@]" - @make lint-$@ - -make-%: - @if [ -f $*/Makefile ]; then make -C $*; fi - -dep-%: make-% - @if [ -f $*/requirements.yaml ]; then helm dep up $*; fi - -lint-%: dep-% - @if [ -f $*/Chart.yaml ]; then helm lint $*; fi - -clean: - @rm -f */requirements.lock - @rm -f *tgz */charts/*tgz -%: - @: \ No newline at end of file diff --git a/kubernetes/common/common-templates/.helmignore b/kubernetes/common/common-templates/.helmignore deleted file mode 100644 index f0c1319444..0000000000 --- a/kubernetes/common/common-templates/.helmignore +++ /dev/null @@ -1,21 +0,0 @@ -# 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 diff --git a/kubernetes/common/common-templates/Chart.yaml b/kubernetes/common/common-templates/Chart.yaml deleted file mode 100644 index 01135755ba..0000000000 --- a/kubernetes/common/common-templates/Chart.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: v1 -description: Common templates for inclusion in other charts -name: common-templates -version: 2.0.0 diff --git a/kubernetes/common/common-templates/templates/_name.tpl b/kubernetes/common/common-templates/templates/_name.tpl deleted file mode 100644 index f6c221f15d..0000000000 --- a/kubernetes/common/common-templates/templates/_name.tpl +++ /dev/null @@ -1,15 +0,0 @@ -{{/* - Expand the name of a chart. -*/}} -{{- define "common.name" -}} - {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* - Create a default fully qualified application name. - Truncated at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -*/}} -{{- define "common.fullname" -}} - {{- $name := default .Chart.Name .Values.nameOverride -}} - {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} \ No newline at end of file diff --git a/kubernetes/common/common-templates/templates/_namespace.tpl b/kubernetes/common/common-templates/templates/_namespace.tpl deleted file mode 100644 index 2964a0f207..0000000000 --- a/kubernetes/common/common-templates/templates/_namespace.tpl +++ /dev/null @@ -1,11 +0,0 @@ -{{/* - Resolve the namespace to apply to a chart. The default namespace suffix - is the name of the chart. This can be overridden if necessary (eg. for subcharts) - using the following value: - - - .Values.nsPrefix : override namespace prefix - - .Values.nsSuffix : override namespace suffix -*/}} -{{- define "common.namespace" -}} - {{- default .Release.Name .Values.nsPrefix -}} -{{- end -}} diff --git a/kubernetes/common/common-templates/values.yaml b/kubernetes/common/common-templates/values.yaml deleted file mode 100644 index 112875753d..0000000000 --- a/kubernetes/common/common-templates/values.yaml +++ /dev/null @@ -1,31 +0,0 @@ -################################################################# -# Global configuration default values that can be inherited by -# all subcharts. -################################################################# -global: - # Change to an unused port prefix range to prevent port conflicts - # with other instances running within the same k8s cluster - nodePortPrefix: 302 - - # image repositories - repository: nexus3.onap.org:10001 - repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ== - - # readiness check - readinessRepository: oomk8s - readinessImage: readiness-check:1.0.0 - - # logging agent - loggingRepository: docker.elastic.co - loggingImage: beats/filebeat:5.5.0 - - # image pull policy - pullPolicy: Always - - # default mount path root directory referenced - # by persistent volumes and log files - persistence: - mountPath: /dockerdata-nfs - - # flag to enable debugging - application support required - debugEnabled: true \ No newline at end of file diff --git a/kubernetes/common/templates/_name.tpl b/kubernetes/common/templates/_name.tpl new file mode 100644 index 0000000000..f6c221f15d --- /dev/null +++ b/kubernetes/common/templates/_name.tpl @@ -0,0 +1,15 @@ +{{/* + Expand the name of a chart. +*/}} +{{- define "common.name" -}} + {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* + Create a default fully qualified application name. + Truncated at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +*/}} +{{- define "common.fullname" -}} + {{- $name := default .Chart.Name .Values.nameOverride -}} + {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} \ No newline at end of file diff --git a/kubernetes/common/templates/_namespace.tpl b/kubernetes/common/templates/_namespace.tpl new file mode 100644 index 0000000000..3da9fee7c1 --- /dev/null +++ b/kubernetes/common/templates/_namespace.tpl @@ -0,0 +1,10 @@ +{{/* + Resolve the namespace to apply to a chart. The default namespace suffix + is the name of the chart. This can be overridden if necessary (eg. for subcharts) + using the following value: + + - .Values.nsPrefix : override namespace prefix +*/}} +{{- define "common.namespace" -}} + {{- default .Release.Namespace .Values.nsPrefix -}} +{{- end -}} diff --git a/kubernetes/common/values.yaml b/kubernetes/common/values.yaml new file mode 100644 index 0000000000..112875753d --- /dev/null +++ b/kubernetes/common/values.yaml @@ -0,0 +1,31 @@ +################################################################# +# Global configuration default values that can be inherited by +# all subcharts. +################################################################# +global: + # Change to an unused port prefix range to prevent port conflicts + # with other instances running within the same k8s cluster + nodePortPrefix: 302 + + # image repositories + repository: nexus3.onap.org:10001 + repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ== + + # readiness check + readinessRepository: oomk8s + readinessImage: readiness-check:1.0.0 + + # logging agent + loggingRepository: docker.elastic.co + loggingImage: beats/filebeat:5.5.0 + + # image pull policy + pullPolicy: Always + + # default mount path root directory referenced + # by persistent volumes and log files + persistence: + mountPath: /dockerdata-nfs + + # flag to enable debugging - application support required + debugEnabled: true \ No newline at end of file -- cgit 1.2.3-korg