summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kubernetes/Makefile39
-rw-r--r--kubernetes/common/Makefile25
-rw-r--r--kubernetes/common/common-templates/.helmignore21
-rw-r--r--kubernetes/common/common-templates/Chart.yaml4
-rw-r--r--kubernetes/common/common-templates/templates/_name.tpl15
-rw-r--r--kubernetes/common/common-templates/templates/_namespace.tpl13
-rw-r--r--kubernetes/common/common-templates/values.yaml31
-rw-r--r--kubernetes/consul/Chart.yaml2
-rw-r--r--kubernetes/kube2msb/Chart.yaml2
-rw-r--r--kubernetes/onap/Chart.yaml9
-rw-r--r--kubernetes/onap/requirements.yaml101
-rw-r--r--kubernetes/onap/resources/environments/onap-demo.yaml60
-rw-r--r--kubernetes/onap/values.yaml105
13 files changed, 425 insertions, 2 deletions
diff --git a/kubernetes/Makefile b/kubernetes/Makefile
new file mode 100644
index 0000000000..5e8350492c
--- /dev/null
+++ b/kubernetes/Makefile
@@ -0,0 +1,39 @@
+PARENT_CHART := onap
+COMMON_CHARTS_DIR := common
+
+# FIXME OOM-765
+ROOT_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
+OUTPUT_DIR := $(ROOT_DIR)/dist
+PACKAGE_DIR := $(OUTPUT_DIR)/packages
+SECRET_DIR := $(OUTPUT_DIR)/secrets
+
+EXCLUDES := $(COMMON_CHARTS_DIR) config oneclick readiness test dist $(PARENT_CHART) dcae
+HELM_CHARTS := $(COMMON_CHARTS_DIR) $(filter-out $(EXCLUDES), $(patsubst %/.,%,$(wildcard */.))) $(PARENT_CHART)
+
+.PHONY: $(EXCLUDES) $(HELM_CHARTS)
+
+all: $(HELM_CHARTS)
+
+$(HELM_CHARTS):
+ @echo "\n[$@]"
+ @make package-$@
+
+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
+
+package-%: lint-%
+ @mkdir -p $(PACKAGE_DIR)
+ @if [ -f $*/Chart.yaml ]; then helm package -d $(PACKAGE_DIR) $*; fi
+
+clean:
+ @rm -f */requirements.lock
+ @rm -f *tgz */charts/*tgz
+ @rm -rf $(PACKAGE_DIR)
+%:
+ @: \ No newline at end of file
diff --git a/kubernetes/common/Makefile b/kubernetes/common/Makefile
new file mode 100644
index 0000000000..1900f31a44
--- /dev/null
+++ b/kubernetes/common/Makefile
@@ -0,0 +1,25 @@
+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
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/common/common-templates/.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/common-templates/Chart.yaml b/kubernetes/common/common-templates/Chart.yaml
new file mode 100644
index 0000000000..01135755ba
--- /dev/null
+++ b/kubernetes/common/common-templates/Chart.yaml
@@ -0,0 +1,4 @@
+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
new file mode 100644
index 0000000000..f6c221f15d
--- /dev/null
+++ b/kubernetes/common/common-templates/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/common-templates/templates/_namespace.tpl b/kubernetes/common/common-templates/templates/_namespace.tpl
new file mode 100644
index 0000000000..076fd53f7a
--- /dev/null
+++ b/kubernetes/common/common-templates/templates/_namespace.tpl
@@ -0,0 +1,13 @@
+{{/*
+ 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" -}}
+ {{- $prefix := default .Release.Name .Values.nsPrefix -}}
+ {{- $suffix := default .Chart.Name .Values.nsSuffix -}}
+ {{- printf "%s-%s" $prefix $suffix -}}
+{{- end -}}
diff --git a/kubernetes/common/common-templates/values.yaml b/kubernetes/common/common-templates/values.yaml
new file mode 100644
index 0000000000..112875753d
--- /dev/null
+++ b/kubernetes/common/common-templates/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
diff --git a/kubernetes/consul/Chart.yaml b/kubernetes/consul/Chart.yaml
index 318234db06..2d2d7ba82c 100644
--- a/kubernetes/consul/Chart.yaml
+++ b/kubernetes/consul/Chart.yaml
@@ -1,4 +1,4 @@
apiVersion: v1
-description: A Helm chart for Consul
+description: ONAP Consul Heath Monitor
name: consul
version: 1.1.0
diff --git a/kubernetes/kube2msb/Chart.yaml b/kubernetes/kube2msb/Chart.yaml
index 97a3454337..b648adc701 100644
--- a/kubernetes/kube2msb/Chart.yaml
+++ b/kubernetes/kube2msb/Chart.yaml
@@ -1,4 +1,4 @@
apiVersion: v1
description: A Helm chart for Kubernetes
-name: kube2msb-registrator
+name: kube2msb
version: 0.1.0
diff --git a/kubernetes/onap/Chart.yaml b/kubernetes/onap/Chart.yaml
new file mode 100644
index 0000000000..db8a30f28e
--- /dev/null
+++ b/kubernetes/onap/Chart.yaml
@@ -0,0 +1,9 @@
+apiVersion: v1
+name: onap
+version: 2.0.0
+appVersion: beijing
+description: Open Network Automation Platform (ONAP)
+home: https://www.onap.org/
+sources:
+- https://gerrit.onap.org/r/#/admin/projects/
+icon: https://wiki.onap.org/download/thumbnails/1015829/onap_704x271%20copy.png?version=1&modificationDate=1488326334000&api=v2
diff --git a/kubernetes/onap/requirements.yaml b/kubernetes/onap/requirements.yaml
new file mode 100644
index 0000000000..8f123128ad
--- /dev/null
+++ b/kubernetes/onap/requirements.yaml
@@ -0,0 +1,101 @@
+# Referencing a named repo called 'local'.
+# Can add this repo by running commands like:
+# > helm serve
+# > helm repo add local http://127.0.0.1:8879
+dependencies:
+ - name: aaf
+ version: ~1.1.0
+ repository: '@local'
+ condition: aaf.enabled
+ - name: aai
+ version: ~0.1.0
+ repository: '@local'
+ condition: aai.enabled
+ - name: appc
+ version: ~0.1.0
+ repository: '@local'
+ condition: appc.enabled
+ - name: clamp
+ version: ~1.1.0
+ repository: '@local'
+ condition: clamp.enabled
+ - name: cli
+ version: ~0.1.0
+ repository: '@local'
+ condition: cli.enabled
+ - name: consul
+ version: ~1.1.0
+ repository: '@local'
+ condition: consul.enabled
+ - name: dcaegen2
+ version: ~1.1.0
+ repository: '@local'
+ condition: dcaegen2.enabled
+ - name: esr
+ version: ~1.1.0
+ repository: '@local'
+ condition: esr.enabled
+ - name: kube2msb
+ version: ~0.1.0
+ repository: '@local'
+ condition: kube2msb.enabled
+ - name: log
+ version: ~0.1.0
+ repository: '@local'
+ condition: log.enabled
+ - name: message-router
+ version: ~0.1.0
+ repository: '@local'
+ condition: message-router.enabled
+ - name: mock
+ version: ~0.1.0
+ repository: '@local'
+ condition: mock.enabled
+ - name: msb
+ version: ~0.1.0
+ repository: '@local'
+ condition: msb.enabled
+ - name: multicloud
+ version: ~1.1.0
+ repository: '@local'
+ condition: multicloud.enabled
+ - name: policy
+ version: ~0.1.0
+ repository: '@local'
+ condition: policy.enabled
+ - name: portal
+ version: ~0.1.0
+ repository: '@local'
+ condition: portal.enabled
+ - name: robot
+ version: ~0.1.0
+ repository: '@local'
+ condition: robot.enabled
+ - name: sdc
+ version: ~0.1.0
+ repository: '@local'
+ condition: sdc.enabled
+ - name: sdnc
+ version: ~0.1.0
+ repository: '@local'
+ condition: sdnc.enabled
+ - name: so
+ version: ~2.0.0
+ repository: '@local'
+ condition: so.enabled
+ - name: uui
+ version: ~1.1.0
+ repository: '@local'
+ condition: uui.enabled
+ - name: vfc
+ version: ~0.1.0
+ repository: '@local'
+ condition: vfc.enabled
+ - name: vid
+ version: ~0.1.0
+ repository: '@local'
+ condition: vid.enabled
+ - name: vnfsdk
+ version: ~1.1.0
+ repository: '@local'
+ condition: vnfsdk.enabled \ No newline at end of file
diff --git a/kubernetes/onap/resources/environments/onap-demo.yaml b/kubernetes/onap/resources/environments/onap-demo.yaml
new file mode 100644
index 0000000000..67b6f401a4
--- /dev/null
+++ b/kubernetes/onap/resources/environments/onap-demo.yaml
@@ -0,0 +1,60 @@
+#################################################################
+# Global configuration overrides.
+#
+# These overrides will affect all helm charts (ie. applications)
+# that are listed below and are 'enabled'.
+#################################################################
+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
+ # logging agent
+ loggingRepository: docker.elastic.co
+
+ # image pull policy
+ pullPolicy: IfNotPresent
+
+ # override 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
+
+#################################################################
+# Enable/disable and configure helm charts (ie. applications)
+# to customize the ONAP deployment.
+#################################################################
+consul:
+ enabled: true
+
+so:
+ enabled: true
+ replicaCount: 1
+ liveness:
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+ # so server configuration
+ config:
+ # message router configuration
+ dmaapTopic: "AUTO"
+ # openstack configuration
+ openStackUserName: "vnf_user"
+ openStackRegion: "RegionOne"
+ openStackKeyStoneUrl: "http://1.2.3.4:5000"
+ openStackServiceTenantName: "service"
+ openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
+
+ # configure embedded mariadb
+ mariadb:
+ config:
+ mariadbRootPassword: password \ No newline at end of file
diff --git a/kubernetes/onap/values.yaml b/kubernetes/onap/values.yaml
new file mode 100644
index 0000000000..5340c95f57
--- /dev/null
+++ b/kubernetes/onap/values.yaml
@@ -0,0 +1,105 @@
+#################################################################
+# Global configuration overrides.
+#
+# These overrides will affect all helm charts (ie. applications)
+# that are listed below and are 'enabled'.
+#################################################################
+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
+ # logging agent
+ loggingRepository: docker.elastic.co
+
+ # 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: false
+
+#################################################################
+# Enable/disable and configure helm charts (ie. applications)
+# to customize the ONAP deployment.
+#################################################################
+aaf:
+ enabled: false
+aai:
+ enabled: false
+appc:
+ enabled: false
+clamp:
+ enabled: false
+cli:
+ enabled: false
+consul: # Consul Health Check Monitoring
+ enabled: false
+dcaegen2:
+ enabled: false
+esr:
+ enabled: false
+kube2msb:
+ enabled: false
+log:
+ enabled: false
+message-router:
+ enabled: false
+mock:
+ enabled: false
+msb:
+ enabled: false
+multicloud:
+ enabled: false
+policy:
+ enabled: false
+portal:
+ enabled: false
+robot: # Robot Health Check
+ enabled: false
+sdc:
+ enabled: false
+sdnc:
+ enabled: false
+so: # Service Orchestrator
+ enabled: true
+
+ replicaCount: 1
+
+ liveness:
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+ # so server configuration
+ config:
+ # message router configuration
+ dmaapTopic: "AUTO"
+ # openstack configuration
+ openStackUserName: "vnf_user"
+ openStackRegion: "RegionOne"
+ openStackKeyStoneUrl: "http://1.2.3.4:5000"
+ openStackServiceTenantName: "service"
+ openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
+
+ # configure embedded mariadb
+ mariadb:
+ config:
+ mariadbRootPassword: password
+uui:
+ enabled: false
+vfc:
+ enabled: false
+vid:
+ enabled: false
+vnfsdk:
+ enabled: false \ No newline at end of file