summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-cm/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-cs/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-fs/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-gui/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml3
-rw-r--r--kubernetes/aaf/charts/aaf-hello/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml3
-rw-r--r--kubernetes/aaf/charts/aaf-locate/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-service/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-service/values.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-sms/resources/config/has.json4
-rw-r--r--kubernetes/aaf/values.yaml2
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/deployment.yaml15
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/fproxy/config/auth/client-cert.p12bin2556 -> 3591 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/service.yaml3
-rw-r--r--kubernetes/aai/values.yaml2
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/values.yaml2
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/values.yaml2
-rw-r--r--kubernetes/clamp/values.yaml2
-rw-r--r--kubernetes/common/music/Chart.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml)9
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/.helmignore (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore)0
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/Chart.yaml19
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/resources/LICENSE.txt13
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin.cql19
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin_pw.cql8
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/resources/cql/extra/check.cql23
-rwxr-xr-xkubernetes/common/music/charts/music-cassandra-job/templates/configmap.yaml24
-rwxr-xr-xkubernetes/common/music/charts/music-cassandra-job/templates/configmap_extra.yaml24
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/templates/job.yaml88
-rw-r--r--kubernetes/common/music/charts/music-cassandra-job/values.yaml70
-rw-r--r--kubernetes/common/music/charts/music-cassandra/.helmignore21
-rw-r--r--kubernetes/common/music/charts/music-cassandra/Chart.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml)8
-rw-r--r--kubernetes/common/music/charts/music-cassandra/requirements.yaml18
-rw-r--r--kubernetes/common/music/charts/music-cassandra/templates/service.yaml54
-rw-r--r--kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml135
-rw-r--r--kubernetes/common/music/charts/music-cassandra/templates/volumes.yaml52
-rw-r--r--kubernetes/common/music/charts/music-cassandra/values.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml)125
-rwxr-xr-x[-rw-r--r--]kubernetes/common/music/charts/music-tomcat/Chart.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml)7
-rwxr-xr-xkubernetes/common/music/charts/music-tomcat/requirements.yaml19
-rwxr-xr-x[-rw-r--r--]kubernetes/common/music/charts/music-tomcat/resources/config/music.properties (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties)26
-rwxr-xr-x[-rw-r--r--]kubernetes/common/music/charts/music-tomcat/templates/configmap.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml)10
-rwxr-xr-x[-rw-r--r--]kubernetes/common/music/charts/music-tomcat/templates/deployment.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml)60
-rwxr-xr-x[-rw-r--r--]kubernetes/common/music/charts/music-tomcat/templates/service.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml)7
-rwxr-xr-x[-rw-r--r--]kubernetes/common/music/charts/music-tomcat/values.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml)63
-rw-r--r--kubernetes/common/music/charts/zookeeper/.helmignore21
-rw-r--r--kubernetes/common/music/charts/zookeeper/Chart.yaml15
-rw-r--r--kubernetes/common/music/charts/zookeeper/OWNERS6
-rw-r--r--kubernetes/common/music/charts/zookeeper/README.md140
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/NOTES.txt7
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/_helpers.tpl32
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/config-jmx-exporter.yaml19
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/job-chroots.yaml62
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/poddisruptionbudget.yaml17
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/service-headless.yaml21
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/service.yaml23
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/statefulset.yaml188
-rw-r--r--kubernetes/common/music/charts/zookeeper/templates/volumes.yaml25
-rw-r--r--kubernetes/common/music/charts/zookeeper/values.yaml284
-rw-r--r--kubernetes/common/music/requirements.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml)3
-rw-r--r--kubernetes/common/music/values.yaml (renamed from kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml)59
-rw-r--r--kubernetes/esr/charts/esr-gui/values.yaml2
-rw-r--r--kubernetes/esr/charts/esr-server/values.yaml2
-rw-r--r--kubernetes/multicloud/charts/multicloud-azure/values.yaml2
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml39
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql90
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt34
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml28
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml105
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml38
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml49
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml70
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml39
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml48
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh36
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt34
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml53
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml53
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt34
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml71
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml39
-rwxr-xr-xkubernetes/oof/charts/oof-has/requirements.yaml3
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/conductor.conf339
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/healthcheck.json18
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/onboard.json6
-rwxr-xr-xkubernetes/oof/charts/oof-has/templates/job-healthcheck.yaml100
-rwxr-xr-xkubernetes/oof/charts/oof-has/templates/job-onboard.yaml108
-rwxr-xr-xkubernetes/oof/charts/oof-has/values.yaml32
-rwxr-xr-xkubernetes/oof/resources/config/osdf_config.yaml2
-rw-r--r--kubernetes/oof/templates/deployment.yaml24
-rw-r--r--kubernetes/oof/values.yaml17
-rw-r--r--kubernetes/policy/charts/brmsgw/values.yaml2
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf1
-rw-r--r--kubernetes/policy/charts/drools/values.yaml2
-rw-r--r--kubernetes/policy/charts/pdp/values.yaml2
-rw-r--r--kubernetes/policy/charts/policy-apex-pdp/values.yaml2
-rw-r--r--kubernetes/policy/charts/policy-distribution/values.yaml2
-rw-r--r--kubernetes/policy/resources/config/pe/console.conf4
-rw-r--r--kubernetes/policy/values.yaml2
-rwxr-xr-xkubernetes/robot/demo-k8s.sh12
-rwxr-xr-xkubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml14
-rw-r--r--kubernetes/uui/charts/uui-server/values.yaml2
106 files changed, 2526 insertions, 922 deletions
diff --git a/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml
index 8655054660..f78dfdc541 100644
--- a/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml
@@ -68,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/cm"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_cm","sleep","0","cd /opt/app/aaf;bin/cm"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-cm/values.yaml b/kubernetes/aaf/charts/aaf-cm/values.yaml
index 6897898b40..c838e17566 100644
--- a/kubernetes/aaf/charts/aaf-cm/values.yaml
+++ b/kubernetes/aaf/charts/aaf-cm/values.yaml
@@ -25,7 +25,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_cm:2.1.5
+image: onap/aaf/aaf_cm:2.1.6-SNAPSHOT
aaf_register_as: "aaf-cm.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-cs/values.yaml b/kubernetes/aaf/charts/aaf-cs/values.yaml
index 61c0808102..9c0b8c0e61 100644
--- a/kubernetes/aaf/charts/aaf-cs/values.yaml
+++ b/kubernetes/aaf/charts/aaf-cs/values.yaml
@@ -24,7 +24,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_cass:2.1.5-SNAPSHOT
+image: onap/aaf/aaf_cass:2.1.6-SNAPSHOT
pullPolicy: Always
# application configuration
diff --git a/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml
index cfafba7088..b93844849e 100644
--- a/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml
@@ -68,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/fs"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_fs","sleep","0","cd /opt/app/aaf;bin/fs"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-fs/values.yaml b/kubernetes/aaf/charts/aaf-fs/values.yaml
index bfa95760e1..e4a805f612 100644
--- a/kubernetes/aaf/charts/aaf-fs/values.yaml
+++ b/kubernetes/aaf/charts/aaf-fs/values.yaml
@@ -25,7 +25,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_fs:2.1.5
+image: onap/aaf/aaf_fs:2.1.6-SNAPSHOT
aaf_register_as: "aaf-fs.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml
index 03424125e4..9dd87948eb 100644
--- a/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml
@@ -68,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/gui"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_gui","sleep","0","cd /opt/app/aaf;bin/gui"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-gui/values.yaml b/kubernetes/aaf/charts/aaf-gui/values.yaml
index 50315db339..9d391f85f9 100644
--- a/kubernetes/aaf/charts/aaf-gui/values.yaml
+++ b/kubernetes/aaf/charts/aaf-gui/values.yaml
@@ -26,7 +26,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_gui:2.1.5
+image: onap/aaf/aaf_gui:2.1.6-SNAPSHOT
aaf_register_as: "aaf-gui.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml
index d3049e0239..c57e57f017 100644
--- a/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml
@@ -34,7 +34,6 @@ spec:
- name: {{ include "common.name" . }}-config-container
image: "{{ include "common.repository" . }}/{{ .Values.global.configImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-
volumeMounts:
- mountPath: "/opt/app/osaaf"
name: {{ include "common.name" . }}-config-vol
@@ -69,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/hello"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_hello","sleep","0","cd /opt/app/aaf;bin/hello"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-hello/values.yaml b/kubernetes/aaf/charts/aaf-hello/values.yaml
index 35a697b6d3..5955261c6f 100644
--- a/kubernetes/aaf/charts/aaf-hello/values.yaml
+++ b/kubernetes/aaf/charts/aaf-hello/values.yaml
@@ -25,7 +25,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_hello:2.1.5
+image: onap/aaf/aaf_hello:2.1.6-SNAPSHOT
aaf_register_as: "aaf-hello.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml
index ea4e3e8a47..a2f9f55c56 100644
--- a/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml
@@ -34,7 +34,6 @@ spec:
- name: {{ include "common.name" . }}-config-container
image: "{{ include "common.repository" . }}/{{ .Values.global.configImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-
volumeMounts:
- mountPath: "/opt/app/osaaf"
name: {{ include "common.name" . }}-config-vol
@@ -69,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/locate"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_locate","sleep","0","cd /opt/app/aaf;bin/locate"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-locate/values.yaml b/kubernetes/aaf/charts/aaf-locate/values.yaml
index 63843956a4..5a4e749529 100644
--- a/kubernetes/aaf/charts/aaf-locate/values.yaml
+++ b/kubernetes/aaf/charts/aaf-locate/values.yaml
@@ -25,7 +25,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_locate:2.1.5
+image: onap/aaf/aaf_locate:2.1.6-SNAPSHOT
aaf_register_as: "aaf-locate.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml
index aed0bbe785..f7a34f440c 100644
--- a/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml
@@ -68,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/oauth"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_oauth","sleep","0","cd /opt/app/aaf;bin/oauth"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-oauth/values.yaml b/kubernetes/aaf/charts/aaf-oauth/values.yaml
index 874b50694d..a915fedfac 100644
--- a/kubernetes/aaf/charts/aaf-oauth/values.yaml
+++ b/kubernetes/aaf/charts/aaf-oauth/values.yaml
@@ -25,7 +25,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_oauth:2.1.5
+image: onap/aaf/aaf_oauth:2.1.6-SNAPSHOT
aaf_register_as: "aaf-oauth.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml
index 35b17ba5a5..92d23126f4 100644
--- a/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml
@@ -68,7 +68,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
containers:
- name: {{ include "common.name" . }}
- command: ["/bin/bash","/opt/app/aaf/bin/service"]
+ command: ["/bin/bash","/opt/app/aaf/pod/pod_wait.sh","aaf_service","sleep","0","cd /opt/app/aaf;bin/service"]
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-service/values.yaml b/kubernetes/aaf/charts/aaf-service/values.yaml
index 5921ff676b..83c6d3aef7 100644
--- a/kubernetes/aaf/charts/aaf-service/values.yaml
+++ b/kubernetes/aaf/charts/aaf-service/values.yaml
@@ -25,7 +25,7 @@ flavor: small
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aaf/aaf_service:2.1.5
+image: onap/aaf/aaf_service:2.1.6-SNAPSHOT
aaf_register_as: "aaf-service.onap"
pullPolicy: Always
diff --git a/kubernetes/aaf/charts/aaf-sms/resources/config/has.json b/kubernetes/aaf/charts/aaf-sms/resources/config/has.json
index 9d017f99ed..ae990a9e6b 100644
--- a/kubernetes/aaf/charts/aaf-sms/resources/config/has.json
+++ b/kubernetes/aaf/charts/aaf-sms/resources/config/has.json
@@ -5,8 +5,8 @@
{
"name": "aai",
"values": {
- "username": "OOF",
- "password": "OOF"
+ "username": "oof@oof.onap.org",
+ "password": "demo123456!"
}
},
{
diff --git a/kubernetes/aaf/values.yaml b/kubernetes/aaf/values.yaml
index d53fe9db21..787eb84ee2 100644
--- a/kubernetes/aaf/values.yaml
+++ b/kubernetes/aaf/values.yaml
@@ -21,7 +21,7 @@ global:
readinessImage: readiness-check:2.0.0
ubuntuInitRepository: registry.hub.docker.com
ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
- configImage: onap/aaf/aaf_config:2.1.5-SNAPSHOT
+ configImage: onap/aaf/aaf_config:2.1.6-SNAPSHOT
persistence:
enabled: true
diff --git a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
index 0c125b126f..4e1866c8b9 100644
--- a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
@@ -31,6 +31,21 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aai-cassandra
+ 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" . }}-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/fproxy/config/auth/client-cert.p12 b/kubernetes/aai/charts/aai-gizmo/resources/fproxy/config/auth/client-cert.p12
index dbf4fcacec..7a4979a7a3 100644
--- a/kubernetes/aai/charts/aai-gizmo/resources/fproxy/config/auth/client-cert.p12
+++ b/kubernetes/aai/charts/aai-gizmo/resources/fproxy/config/auth/client-cert.p12
Binary files differ
diff --git a/kubernetes/aai/charts/aai-gizmo/templates/service.yaml b/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
index ac34ed9248..a584800bb8 100644
--- a/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
@@ -29,8 +29,9 @@ spec:
ports:
{{ if .Values.global.installSidecarSecurity }}
{{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.global.rproxy.port }}
+ - port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ targetPort: {{ .Values.global.rproxy.port }}
name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
diff --git a/kubernetes/aai/values.yaml b/kubernetes/aai/values.yaml
index 0bc707e4e5..e216b35cf6 100644
--- a/kubernetes/aai/values.yaml
+++ b/kubernetes/aai/values.yaml
@@ -150,7 +150,7 @@ global: # global defaults
# Active spring profiles for the resources microservice
profiles:
- active: production,dmaap,one-way-ssl
+ active: production,dmaap,aaf-auth
# Notification event specific properties
notification:
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
index 950029c7a6..d1e85aab32 100644
--- a/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
@@ -33,7 +33,7 @@ busyboxImage: library/busybox:latest
# application image
repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-kibana:3.0.0
+image: onap/clamp-dashboard-kibana:3.0.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
index 586132de15..a05564a719 100644
--- a/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
@@ -29,7 +29,7 @@ global:
# application image
repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-logstash:3.0.0
+image: onap/clamp-dashboard-logstash:3.0.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/clamp/values.yaml b/kubernetes/clamp/values.yaml
index 3d638104f8..24462d8b03 100644
--- a/kubernetes/clamp/values.yaml
+++ b/kubernetes/clamp/values.yaml
@@ -28,7 +28,7 @@ subChartsOnly:
# application image
repository: nexus3.onap.org:10001
-image: onap/clamp:3.0.0
+image: onap/clamp:3.0.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml b/kubernetes/common/music/Chart.yaml
index cb070a5036..680216389a 100644
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml
+++ b/kubernetes/common/music/Chart.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -14,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: ONAP OOF-MUSIC Container
-name: oof-has-music
-version: 2.5.3
+description: MUSIC - Multi-site State Coordination Service
+name: music
+version: 3.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore b/kubernetes/common/music/charts/music-cassandra-job/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore
+++ b/kubernetes/common/music/charts/music-cassandra-job/.helmignore
diff --git a/kubernetes/common/music/charts/music-cassandra-job/Chart.yaml b/kubernetes/common/music/charts/music-cassandra-job/Chart.yaml
new file mode 100644
index 0000000000..fd421764fa
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/Chart.yaml
@@ -0,0 +1,19 @@
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: Cassandra Job - Run CQL Scripts after Cassandra Starts.
+name: music-cassandra-job
+version: 3.0.0
+
diff --git a/kubernetes/common/music/charts/music-cassandra-job/resources/LICENSE.txt b/kubernetes/common/music/charts/music-cassandra-job/resources/LICENSE.txt
new file mode 100644
index 0000000000..7f60913d26
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/resources/LICENSE.txt
@@ -0,0 +1,13 @@
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License. \ No newline at end of file
diff --git a/kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin.cql b/kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin.cql
new file mode 100644
index 0000000000..a76d774bd3
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin.cql
@@ -0,0 +1,19 @@
+CREATE KEYSPACE IF NOT EXISTS admin
+ WITH REPLICATION = {
+ 'class' : '{{.Values.cql.keyspace.replicationClass}}',
+ 'replication_factor': {{.Values.cql.keyspace.replicationFactor}}
+ }
+ AND DURABLE_WRITES = true;
+
+CREATE TABLE IF NOT EXISTS admin.keyspace_master (
+ uuid uuid,
+ keyspace_name text,
+ application_name text,
+ is_api boolean,
+ password text,
+ username text,
+ is_aaf boolean,
+ PRIMARY KEY (uuid)
+);
+
+describe keyspaces;
diff --git a/kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin_pw.cql b/kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin_pw.cql
new file mode 100644
index 0000000000..24f2ad77f7
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/resources/cql/admin_pw.cql
@@ -0,0 +1,8 @@
+CREATE ROLE IF NOT EXISTS {{.Values.cql.adminUser.username}}
+WITH PASSWORD = '{{.Values.cql.adminUser.password}}'
+AND SUPERUSER = true
+AND LOGIN = true;
+
+ALTER ROLE cassandra
+WITH PASSWORD = '{{.Values.cql.adminUser.passwordReplace}}';
+
diff --git a/kubernetes/common/music/charts/music-cassandra-job/resources/cql/extra/check.cql b/kubernetes/common/music/charts/music-cassandra-job/resources/cql/extra/check.cql
new file mode 100644
index 0000000000..a516be857b
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/resources/cql/extra/check.cql
@@ -0,0 +1,23 @@
+CREATE KEYSPACE testks
+ WITH REPLICATION = {
+ 'class' : '{{.Values.cql.keyspace.replicationClass}}',
+ 'replication_factor': {{.Values.cql.keyspace.replicationFactor}}
+ }
+ AND DURABLE_WRITES = true;
+
+CREATE TABLE testks.keyspace_master_table (
+ uuid uuid,
+ keyspace_name text,
+ application_name text,
+ is_api boolean,
+ password text,
+ username text,
+ is_aaf boolean,
+ PRIMARY KEY (uuid)
+);
+
+DESCRIBE KEYSPACES;
+DESCRIBE keyspace testks;
+SELECT * FROM system_auth.roles;
+DROP keyspace testks;
+
diff --git a/kubernetes/common/music/charts/music-cassandra-job/templates/configmap.yaml b/kubernetes/common/music/charts/music-cassandra-job/templates/configmap.yaml
new file mode 100755
index 0000000000..011dccda25
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/templates/configmap.yaml
@@ -0,0 +1,24 @@
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-cql
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/cql/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/common/music/charts/music-cassandra-job/templates/configmap_extra.yaml b/kubernetes/common/music/charts/music-cassandra-job/templates/configmap_extra.yaml
new file mode 100755
index 0000000000..72733b3088
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/templates/configmap_extra.yaml
@@ -0,0 +1,24 @@
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-extra-cql
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/cql/extra/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/common/music/charts/music-cassandra-job/templates/job.yaml b/kubernetes/common/music/charts/music-cassandra-job/templates/job.yaml
new file mode 100644
index 0000000000..6ec282e44e
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/templates/job.yaml
@@ -0,0 +1,88 @@
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - music-cassandra
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-update-job
+ image: "{{ .Values.global.repository }}/{{ .Values.job.cassandra.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: CASS_HOSTNAME
+ value: "{{ .Values.job.host }}"
+ - name: USERNAME
+ value: "{{ .Values.cql.adminUser.username }}"
+ - name: PORT
+ value: "{{ .Values.job.port }}"
+ - name: PASSWORD
+ value: "{{ .Values.cql.adminUser.password }}"
+ - name: TIMEOUT
+ value: "{{ .Values.job.timeout }}"
+ - name: DELAY
+ value: "{{ .Values.job.delay }}"
+ volumeMounts:
+ # Admin cql Files that setup Admin Keyspace and Change Admin user.
+ - name: {{ include "common.name" . }}-cql
+ mountPath: /cql/admin.cql
+ subPath: admin.cql
+ - name: {{ include "common.name" . }}-cql
+ mountPath: /cql/admin_pw.cql
+ subPath: admin_pw.cql
+ # This is where Apps or MISC will put any of their own startup cql scripts.
+ - name: {{ include "common.name" . }}-extra-cql
+ mountPath: /cql/extra
+ volumes:
+ - name: {{ include "common.name" . }}-cql
+ configMap:
+ name: {{ include "common.fullname" . }}-cql
+ - name: {{ include "common.name" . }}-extra-cql
+ configMap:
+ name: {{ include "common.fullname" . }}-extra-cql
+ restartPolicy: Never
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+
diff --git a/kubernetes/common/music/charts/music-cassandra-job/values.yaml b/kubernetes/common/music/charts/music-cassandra-job/values.yaml
new file mode 100644
index 0000000000..5d9b564abf
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra-job/values.yaml
@@ -0,0 +1,70 @@
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Default values for cassandra.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ pullPolicy: Always
+ repository: nexus3.onap.org:10001
+
+ # readiness check
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+ # logging agent
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+ replicaCount: 3
+
+job:
+ host: music-cassandra
+ port: 9042
+ busybox:
+ image: library/busybox:latest
+ cassandra:
+ image: onap/music/cassandra_job:3.0.23
+ timeout: 30
+ delay: 120
+cql:
+ keyspace:
+ replicationClass: "SimpleStrategy"
+ replicationFactor: 3
+ adminUser:
+ username: nelson24
+ password: nelson24
+ passwordReplace: A2C4E6G8I0J2L4O6Q8S0U2W4Y6
+
+podManagementPolicy: OrderedReady
+updateStrategy:
+ type: OnDelete
+
+ingress:
+ enabled: false
+
+tolerations: []
+
+affinity: {}
+
+persistence:
+ enabled: true
+
+resources:
+ limits:
+ cpu: 1
+ memory: 1Gi
+ requests:
+ cpu: 1
+ memory: 1Gi
diff --git a/kubernetes/common/music/charts/music-cassandra/.helmignore b/kubernetes/common/music/charts/music-cassandra/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra/.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/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml b/kubernetes/common/music/charts/music-cassandra/Chart.yaml
index 5c12786a97..7aae51ac98 100644
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml
+++ b/kubernetes/common/music/charts/music-cassandra/Chart.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -14,6 +13,7 @@
# limitations under the License.
apiVersion: v1
-description: OOF-HAS Cassandra
-name: oof-has-cassandra
+description: ONAP - Cassandra Database
+name: music-cassandra
version: 3.0.0
+
diff --git a/kubernetes/common/music/charts/music-cassandra/requirements.yaml b/kubernetes/common/music/charts/music-cassandra/requirements.yaml
new file mode 100644
index 0000000000..a22007c38a
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra/requirements.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~3.0.0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/common/music/charts/music-cassandra/templates/service.yaml b/kubernetes/common/music/charts/music-cassandra/templates/service.yaml
new file mode 100644
index 0000000000..818c70e8f3
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra/templates/service.yaml
@@ -0,0 +1,54 @@
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+ type: {{ .Values.service.type }}
+ # Not working, open k8s bug: https://github.com/kubernetes/kubernetes/issues/58662
+ publishNotReadyAddresses: true
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName3 }}
+ - port: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName3 }}
+ {{- else -}}
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ - port: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName3 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
diff --git a/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml b/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml
new file mode 100644
index 0000000000..e67a2c3329
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml
@@ -0,0 +1,135 @@
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+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:
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 1
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app
+ operator: In
+ values:
+ - {{ .Chart.Name }}
+ topologyKey: kubernetes.io/hostname
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ podManagementPolicy: {{ .Values.podManagementPolicy }}
+ updateStrategy:
+ type: {{ .Values.updateStrategy.type }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.repository }}/{{ .Values.image.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ timeoutSeconds: {{ .Values.liveness.periodSeconds }}
+ lifecycle:
+ preStop:
+ exec:
+ command: ["/bin/sh", "-c", "PID=$(pidof java) && kill $PID && while ps -p $PID > /dev/null; do sleep 1; done"]
+ env:
+ {{- $seed_size := default 1 .Values.replicaCount | int -}}
+ {{- $global := . }}
+ - name: MAX_HEAP_SIZE
+ value: {{ .Values.config.heap.max }}
+ - name: HEAP_NEWSIZE
+ value: {{ .Values.config.heap.min }}
+ - name: CASSANDRA_SEEDS
+ value: "{{- range $i, $e := until $seed_size }}{{ template "common.fullname" $global }}-{{ $i }}.{{ include "common.servicename" $global }}{{- if (lt ( add 1 $i ) $seed_size ) }},{{- end }}{{- end }}"
+ - name: JVM_OPTS
+ value: {{ .Values.config.jvmOpts | quote }}
+ - name: CASSANDRA_CLUSTER_NAME
+ value: {{ .Values.config.clusterName | quote }}
+ - name: CASSANDRA_DC
+ value: {{ .Values.config.dataCenter | quote }}
+ - name: CASSANDRA_RACK
+ value: {{ .Values.config.rackName | quote }}
+ - name: CASSANDRA_AUTO_BOOTSTRAP
+ value: {{ .Values.config.autoBootstrap | quote }}
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: {{ template "common.name" . }}-data
+ mountPath: /var/lib/cassandra
+ resources:
+{{ toYaml .Values.resources | indent 10 }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ {{- if not .Values.persistence.enabled }}
+ - name: {{ template "common.name" . }}-data
+ emptyDir: {}
+ {{- else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ template "common.name" . }}-data
+ labels:
+ app: {{ template "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ annotations:
+ volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass }}
+ spec:
+ storageClassName: {{ .Values.persistence.storageClass }}
+ accessModes:
+ - {{ .Values.persistence.accessMode | quote }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size | quote }}
+ {{- end }}
diff --git a/kubernetes/common/music/charts/music-cassandra/templates/volumes.yaml b/kubernetes/common/music/charts/music-cassandra/templates/volumes.yaml
new file mode 100644
index 0000000000..83e7e189b5
--- /dev/null
+++ b/kubernetes/common/music/charts/music-cassandra/templates/volumes.yaml
@@ -0,0 +1,52 @@
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{ if .Values.persistence.enabled }}
+{{- $root := . -}}
+{{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: {{ $root.Release.Name }}-{{ $root.Values.service.name }}-{{ $i }}
+ namespace: {{ $root.Release.Namespace }}
+ labels:
+ type: {{ $root.Values.persistence.storageType }}
+ app: {{ $root.Values.service.name }}
+ chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
+ release: {{ $root.Release.Name }}
+ heritage: {{ $root.Release.Service }}
+spec:
+ capacity:
+ storage: {{ $root.Values.persistence.size }}
+ accessModes:
+ - {{ $root.Values.persistence.accessMode }}
+ hostPath:
+ path: {{ $root.Values.persistence.mountPath }}/{{ $root.Release.Name }}/{{ $root.Values.persistence.mountSubPath }}-{{$i}}
+ persistentVolumeReclaimPolicy: {{ $root.Values.persistence.volumeReclaimPolicy }}
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 1
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app
+ operator: In
+ values:
+ - "{{ $root.Chart.Name }}"
+ topologyKey: kubernetes.io/hostname
+{{ end }}
+{{ end }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml b/kubernetes/common/music/charts/music-cassandra/values.yaml
index 38d2d18eb2..2c75c58fa1 100644
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml
+++ b/kubernetes/common/music/charts/music-cassandra/values.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,53 +12,62 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# Default values for mariadb.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-global: # global defaults
+global:
nodePortPrefix: 302
- persistence: {}
+ pullPolicy: Always
+ repository: nexus3.onap.org:10001
-# application image
-repository: nexus3.onap.org:10001
-image: onap/music/cassandra_music:3.0.0
-pullPolicy: Always
+ # readiness check
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
-# application configuration
-config:
- cassandraUsername: root
- cassandraPassword: Aa123456
+ # logging agent
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
-# default number of instances
-replicaCount: 1
+replicaCount: 3
-nodeSelector: {}
+# Cassandra Image - This image is modified from the original on
+# Docker Hub where the Security has been turned on.
+# When logging into DB the default username and password are 'cassandra'
+# kubectl exec -it <cassandra-n> -n <namespace> cqlsh -u cassandra -p cassandra
+image:
+ image: onap/music/cassandra_3_11:3.0.23
+ pullPolicy: Always
-affinity: {}
+# Cassandra ENV configuration
+config:
+ heap:
+ max: 512M
+ min: 100M
+ jvmOpts: -Dcassandra.consistent.rangemovement=false
+ clusterName: music-cluster
+ dataCenter: onap-1
+ rackName: Rack1
+ autoBootstrap: true
+ ports:
+ cql: 9042
+ thrift: 9160
+ # If a JVM Agent is in place
+ # agent: 61621
+
+service:
+ expose: true
+ type: ClusterIP
+ name: music-cassandra
+ internalPort: 9042
+ portName: cql
+ internalPort2: 9160
+ portName2: thrift
+ internalPort3: 61621
+ portName3: agent
-# Resource Limit flavor -By Default using small
-flavor: small
-# Segregation for Different environment (Small and Large)
-resources:
- small:
- limits:
- memory: 16Gi
- cpu: 8000m
- requests:
- memory: 8Gi
- cpu: 4000m
- large:
- limits:
- memory: 32Gi
- cpu: 16000m
- requests:
- memory: 16Gi
- cpu: 8000m
- unlimited: {}
# probe configuration parameters
liveness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 120
periodSeconds: 10
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
@@ -69,7 +77,15 @@ readiness:
initialDelaySeconds: 10
periodSeconds: 10
-## Persist data to a persitent volume
+podManagementPolicy: OrderedReady
+updateStrategy:
+ type: OnDelete
+
+ingress:
+ enabled: false
+
+tolerations: []
+
persistence:
enabled: true
@@ -86,25 +102,18 @@ persistence:
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
- # storageClass: "-"
- accessMode: ReadWriteMany
+ ## storageClass: "-"
+ accessMode: ReadWriteOnce
size: 2Gi
- mountPath: /dockerdata-nfs
- mountSubPath: oof/cassandra/data
-service:
- type: ClusterIP
- name: oof-has-cassandra
- portName: oof-has-cassandra
- externalPort: 9160
- internalPort: 9160
- externalPort2: 7000
- internalPort2: 7000
- externalPort3: 7001
- internalPort3: 7001
- externalPort4: 7199
- internalPort4: 7199
- externalPort5: 9042
- internalPort5: 9042
+ mountPath: /dockerdata-nfs/
+ mountSubPath: common/cassandra/data
+ storageType: local
+ storageClass: ""
-ingress:
- enabled: false
+resources:
+ limits:
+ cpu: 4
+ memory: 8Gi
+ requests:
+ cpu: 2
+ memory: 4Gi
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml b/kubernetes/common/music/charts/music-tomcat/Chart.yaml
index ad3b82726c..d0fdc6088c 100644..100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml
+++ b/kubernetes/common/music/charts/music-tomcat/Chart.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -14,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: ONAP OOF Zookeeper
-name: oof-has-zookeeper
+description: ONAP - MUSIC Tomcat Container
+name: music-tomcat
version: 3.0.0
diff --git a/kubernetes/common/music/charts/music-tomcat/requirements.yaml b/kubernetes/common/music/charts/music-tomcat/requirements.yaml
new file mode 100755
index 0000000000..28352e407c
--- /dev/null
+++ b/kubernetes/common/music/charts/music-tomcat/requirements.yaml
@@ -0,0 +1,19 @@
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+dependencies:
+ - name: common
+ version: ~3.0.0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties b/kubernetes/common/music/charts/music-tomcat/resources/config/music.properties
index 0b4a973d4f..b977ca58ee 100644..100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties
+++ b/kubernetes/common/music/charts/music-tomcat/resources/config/music.properties
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,12 +16,17 @@ my.public.ip=localhost
all.public.ips=localhost
my.id=0
all.ids=0
-#######################################
-# Optional current values are defaults
-#######################################
-zookeeper.host=oof-has-zk
-cassandra.host=oof-has-cassandra
-cassandra.user=root
-cassandra.password=Aa123456
-# AAF Endpoint if using AAF
-aaf.endpoint.url=https://aaf.api.simpledemo.onap.org
+### Host Info ###
+zookeeper.host={{.Values.properties.zookeeperHost}}
+cassandra.host={{.Values.properties.cassandraHost}}
+### User Info ###
+cassandra.user={{.Values.properties.cassandraUser}}
+cassandra.password={{.Values.properties.cassandraPassword}}
+### AAF Endpoint ###
+aaf.endpoint.url={{.Values.properties.aafEndpointUrl}}
+### Admin API ###
+# AAF UAT
+aaf.admin.url={{.Values.properties.aafAdminUrl}}
+# AAF PROD
+admin.aaf.role={{.Values.properties.adminAafRole}}
+music.namespace={{.Values.properties.musicNamespace}}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml b/kubernetes/common/music/charts/music-tomcat/templates/configmap.yaml
index 7a38efa8cc..15859345e8 100644..100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml
+++ b/kubernetes/common/music/charts/music-tomcat/templates/configmap.yaml
@@ -1,5 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright (C) 2018 AT&T,VMware
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,16 +12,12 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+*/}}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
data:
{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml b/kubernetes/common/music/charts/music-tomcat/templates/deployment.yaml
index 9dc160f2fa..1fec55caca 100644..100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml
+++ b/kubernetes/common/music/charts/music-tomcat/templates/deployment.yaml
@@ -1,5 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,6 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+*/}}
apiVersion: extensions/v1beta1
kind: Deployment
@@ -32,22 +33,48 @@ spec:
release: {{ .Release.Name }}
spec:
initContainers:
+ - name: {{ include "common.name" . }}-zookeeper-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - zookeeper
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ - name: {{ include "common.name" . }}-cassandra-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-music-cassandra-job-config"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
# War Container
- - name: "{{ include "common.name" . }}-war"
- image: "{{ include "common.repository" . }}/{{ .Values.warImage }}" #"
- command: ["cp","/app/MUSIC.war","/webapps"]
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- ports:
- volumeMounts:
- - mountPath: /webapps
- name: shared-data
+ - name: "{{ .Chart.Name }}-war"
+ image: "{{ .Values.repository }}/{{ .Values.warImage }}"
+ command: ["cp","/app/MUSIC.war","/webapps"]
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ volumeMounts:
+ - mountPath: /webapps
+ name: shared-data
containers:
# Tomcat Container
- - name: {{ include "common.name" . }}
- image: "{{ include "common.repository" . }}/{{ .Values.image }}" #"
+ - name: "{{ include "common.name" . }}"
+ image: "{{ .Values.repository }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- resources:
-{{ include "common.resources" . | indent 12 }}
ports:
- containerPort: {{ .Values.service.internalPort }}
# disable liveness probe when breakpoints set in debugger
@@ -73,9 +100,8 @@ spec:
- name: properties-music
mountPath: /opt/app/music/etc/music.properties
subPath: music.properties
- - name: properties-music
- mountPath: /opt/app/music/startup.sh
- subPath: startup.sh
+ resources:
+{{ toYaml .Values.resources | indent 10 }}
volumes:
- name: shared-data
emptyDir: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml b/kubernetes/common/music/charts/music-tomcat/templates/service.yaml
index 097a44d2f6..f6a086cc99 100644..100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml
+++ b/kubernetes/common/music/charts/music-tomcat/templates/service.yaml
@@ -1,5 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+{{/*
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,6 +12,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+*/}}
apiVersion: v1
kind: Service
@@ -29,7 +30,7 @@ spec:
ports:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.externalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.nodePort }}
name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml b/kubernetes/common/music/charts/music-tomcat/values.yaml
index f848162ce6..5527800e41 100644..100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml
+++ b/kubernetes/common/music/charts/music-tomcat/values.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,14 +12,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+
#################################################################
# Global configuration defaults.
#################################################################
global:
nodePortPrefix: 302
+ nodePortPrefixExt: 304
repository: nexus3.onap.org:10001
+
+ # readiness check
readinessRepository: oomk8s
readinessImage: readiness-check:2.0.0
+
+ # logging agent
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -31,7 +36,7 @@ global:
repository: nexus3.onap.org:10001
image: library/tomcat:8.5
pullPolicy: Always
-warImage: onap/music/music:2.5.3
+warImage: onap/music/music:3.0.23
# flag to enable debugging - application support required
debugEnabled: false
@@ -42,31 +47,18 @@ config:
passwordCassandra: cassandra1
# default number of instances
-replicaCount: 1
+replicaCount: 3
+
+job:
+ host: cassandra
+ port: 9042
+ busybox:
+ image: library/busybox:latest
nodeSelector: {}
affinity: {}
-# Resource Limit flavor -By Default using small
-flavor: small
-# Segregation for Different environment (Small and Large)
-resources:
- small:
- limits:
- memory: 4Gi
- cpu: 2000m
- requests:
- memory: 1Gi
- cpu: 500m
- large:
- limits:
- memory: 8Gi
- cpu: 4000m
- requests:
- memory: 2Gi
- cpu: 1000m
- unlimited: {}
# probe configuration parameters
liveness:
initialDelaySeconds: 10
@@ -81,10 +73,31 @@ readiness:
service:
type: NodePort
- name: oof-has-music
+ name: music-tomcat
externalPort: 8080
internalPort: 8080
nodePort: 76
- portName: oof-has-music
+ portName: tomcat
ingress:
enabled: false
+
+#resources: {}
+resources:
+ limits:
+ cpu: 2
+ memory: 2Gi
+ requests:
+ cpu: 2
+ memory: 1Gi
+
+
+properties:
+ zookeeperHost: zookeeper
+ cassandraHost: music-cassandra
+ cassandraUser: nelson24
+ cassandraPassword: nelson24
+
+ # Admin API
+ # ONAP AAF
+ aafAdminUrl:
+
diff --git a/kubernetes/common/music/charts/zookeeper/.helmignore b/kubernetes/common/music/charts/zookeeper/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/.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/music/charts/zookeeper/Chart.yaml b/kubernetes/common/music/charts/zookeeper/Chart.yaml
new file mode 100644
index 0000000000..01e81736f6
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/Chart.yaml
@@ -0,0 +1,15 @@
+name: zookeeper
+home: https://zookeeper.apache.org/
+version: 1.0.2
+appVersion: 3.4.10
+description: Centralized service for maintaining configuration information, naming,
+ providing distributed synchronization, and providing group services.
+icon: https://zookeeper.apache.org/images/zookeeper_small.gif
+sources:
+- https://github.com/apache/zookeeper
+- https://github.com/kubernetes/contrib/tree/master/statefulsets/zookeeper
+maintainers:
+- name: lachie83
+ email: lachlan.evenson@microsoft.com
+- name: kow3ns
+ email: owensk@google.com
diff --git a/kubernetes/common/music/charts/zookeeper/OWNERS b/kubernetes/common/music/charts/zookeeper/OWNERS
new file mode 100644
index 0000000000..dd9facde2a
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/OWNERS
@@ -0,0 +1,6 @@
+approvers:
+- lachie83
+- kow3ns
+reviewers:
+- lachie83
+- kow3ns
diff --git a/kubernetes/common/music/charts/zookeeper/README.md b/kubernetes/common/music/charts/zookeeper/README.md
new file mode 100644
index 0000000000..22bbac49dc
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/README.md
@@ -0,0 +1,140 @@
+# incubator/zookeeper
+
+This helm chart provides an implementation of the ZooKeeper [StatefulSet](http://kubernetes.io/docs/concepts/abstractions/controllers/statefulsets/) found in Kubernetes Contrib [Zookeeper StatefulSet](https://github.com/kubernetes/contrib/tree/master/statefulsets/zookeeper).
+
+## Prerequisites
+* Kubernetes 1.6+
+* PersistentVolume support on the underlying infrastructure
+* A dynamic provisioner for the PersistentVolumes
+* A familiarity with [Apache ZooKeeper 3.4.x](https://zookeeper.apache.org/doc/current/)
+
+## Chart Components
+This chart will do the following:
+
+* Create a fixed size ZooKeeper ensemble using a [StatefulSet](http://kubernetes.io/docs/concepts/abstractions/controllers/statefulsets/).
+* Create a [PodDisruptionBudget](https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-disruption-budget/) so kubectl drain will respect the Quorum size of the ensemble.
+* Create a [Headless Service](https://kubernetes.io/docs/concepts/services-networking/service/) to control the domain of the ZooKeeper ensemble.
+* Create a Service configured to connect to the available ZooKeeper instance on the configured client port.
+* Optionally apply a [Pod Anti-Affinity](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity-beta-feature) to spread the ZooKeeper ensemble across nodes.
+* Optionally start JMX Exporter and Zookeeper Exporter containers inside Zookeeper pods.
+* Optionally create a job which creates Zookeeper chroots (e.g. `/kafka1`).
+
+## Installing the Chart
+You can install the chart with the release name `zookeeper` as below.
+
+```console
+$ helm repo add incubator http://storage.googleapis.com/kubernetes-charts-incubator
+$ helm install --name zookeeper incubator/zookeeper
+```
+
+If you do not specify a name, helm will select a name for you.
+
+### Installed Components
+You can use `kubectl get` to view all of the installed components.
+
+```console{%raw}
+$ kubectl get all -l app=zookeeper
+NAME: zookeeper
+LAST DEPLOYED: Wed Apr 11 17:09:48 2018
+NAMESPACE: default
+STATUS: DEPLOYED
+
+RESOURCES:
+==> v1beta1/PodDisruptionBudget
+NAME MIN AVAILABLE MAX UNAVAILABLE ALLOWED DISRUPTIONS AGE
+zookeeper N/A 1 1 2m
+
+==> v1/Service
+NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
+zookeeper-headless ClusterIP None <none> 2181/TCP,3888/TCP,2888/TCP 2m
+zookeeper ClusterIP 10.98.179.165 <none> 2181/TCP 2m
+
+==> v1beta1/StatefulSet
+NAME DESIRED CURRENT AGE
+zookeeper 3 3 2m
+```
+
+1. `statefulsets/zookeeper` is the StatefulSet created by the chart.
+1. `po/zookeeper-<0|1|2>` are the Pods created by the StatefulSet. Each Pod has a single container running a ZooKeeper server.
+1. `svc/zookeeper-headless` is the Headless Service used to control the network domain of the ZooKeeper ensemble.
+1. `svc/zookeeper` is a Service that can be used by clients to connect to an available ZooKeeper server.
+
+## Configuration
+You can specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
+
+Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,
+
+```console
+$ helm install --name my-release -f values.yaml incubator/zookeeper
+```
+
+## Default Values
+
+- You can find all user-configurable settings, their defaults and commentary about them in [values.yaml](values.yaml).
+
+## Deep Dive
+
+## Image Details
+The image used for this chart is based on Ubuntu 16.04 LTS. This image is larger than Alpine or BusyBox, but it provides glibc, rather than ulibc or mucl, and a JVM release that is built against it. You can easily convert this chart to run against a smaller image with a JVM that is built against that image's libc. However, as far as we know, no Hadoop vendor supports, or has verified, ZooKeeper running on such a JVM.
+
+## JVM Details
+The Java Virtual Machine used for this chart is the OpenJDK JVM 8u111 JRE (headless).
+
+## ZooKeeper Details
+The ZooKeeper version is the latest stable version (3.4.10). The distribution is installed into /opt/zookeeper-3.4.10. This directory is symbolically linked to /opt/zookeeper. Symlinks are created to simulate a rpm installation into /usr.
+
+## Failover
+You can test failover by killing the leader. Insert a key:
+```console
+$ kubectl exec zookeeper-0 -- /opt/zookeeper/bin/zkCli.sh create /foo bar;
+$ kubectl exec zookeeper-2 -- /opt/zookeeper/bin/zkCli.sh get /foo;
+```
+
+Watch existing members:
+```console
+$ kubectl run --attach bbox --image=busybox --restart=Never -- sh -c 'while true; do for i in 0 1 2; do echo zk-${i} $(echo stats | nc <pod-name>-${i}.<headless-service-name>:2181 | grep Mode); sleep 1; done; done';
+
+zk-2 Mode: follower
+zk-0 Mode: follower
+zk-1 Mode: leader
+zk-2 Mode: follower
+```
+
+Delete Pods and wait for the StatefulSet controller to bring them back up:
+```console
+$ kubectl delete po -l app=zookeeper
+$ kubectl get po --watch-only
+NAME READY STATUS RESTARTS AGE
+zookeeper-0 0/1 Running 0 35s
+zookeeper-0 1/1 Running 0 50s
+zookeeper-1 0/1 Pending 0 0s
+zookeeper-1 0/1 Pending 0 0s
+zookeeper-1 0/1 ContainerCreating 0 0s
+zookeeper-1 0/1 Running 0 19s
+zookeeper-1 1/1 Running 0 40s
+zookeeper-2 0/1 Pending 0 0s
+zookeeper-2 0/1 Pending 0 0s
+zookeeper-2 0/1 ContainerCreating 0 0s
+zookeeper-2 0/1 Running 0 19s
+zookeeper-2 1/1 Running 0 41s
+```
+
+Check the previously inserted key:
+```console
+$ kubectl exec zookeeper-1 -- /opt/zookeeper/bin/zkCli.sh get /foo
+ionid = 0x354887858e80035, negotiated timeout = 30000
+
+WATCHER::
+
+WatchedEvent state:SyncConnected type:None path:null
+bar
+```
+
+## Scaling
+ZooKeeper can not be safely scaled in versions prior to 3.5.x. This chart currently uses 3.4.x. There are manual procedures for scaling a 3.4.x ensemble, but as noted in the [ZooKeeper 3.5.2 documentation](https://zookeeper.apache.org/doc/r3.5.2-alpha/zookeeperReconfig.html) these procedures require a rolling restart, are known to be error prone, and often result in a data loss.
+
+While ZooKeeper 3.5.x does allow for dynamic ensemble reconfiguration (including scaling membership), the current status of the release is still alpha, and 3.5.x is therefore not recommended for production use.
+
+## Limitations
+* StatefulSet and PodDisruptionBudget are beta resources.
+* Only supports storage options that have backends for persistent volume claims.
diff --git a/kubernetes/common/music/charts/zookeeper/templates/NOTES.txt b/kubernetes/common/music/charts/zookeeper/templates/NOTES.txt
new file mode 100644
index 0000000000..4f7a27bd99
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/NOTES.txt
@@ -0,0 +1,7 @@
+Thank you for installing ZooKeeper on your Kubernetes cluster. More information
+about ZooKeeper can be found at https://zookeeper.apache.org/doc/current/
+
+Your connection string should look like:
+ {{ template "common.fullname" . }}-0.{{ template "common.fullname" . }}-headless:{{ .Values.service.ports.client.port }},{{ template "common.fullname" . }}-1.{{ template "common.fullname" . }}-headless:{{ .Values.service.ports.client.port }},...
+
+You can also use the client service {{ template "common.fullname" . }}:{{ .Values.service.ports.client.port }} to connect to an available ZooKeeper server.
diff --git a/kubernetes/common/music/charts/zookeeper/templates/_helpers.tpl b/kubernetes/common/music/charts/zookeeper/templates/_helpers.tpl
new file mode 100644
index 0000000000..1ef5353fa1
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/_helpers.tpl
@@ -0,0 +1,32 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+Expand the name of the chart.
+*/}}
+{{- define "common.name" -}}
+{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{/*
+Create a default fully qualified app name.
+We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
+If release name contains chart name it will be used as a full name.
+*/}}
+{{- define "common.fullname" -}}
+{{- if .Values.fullnameOverride -}}
+{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
+{{- else -}}
+{{- $name := default .Chart.Name .Values.nameOverride -}}
+{{- if contains $name .Release.Name -}}
+{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
+{{- else -}}
+{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+{{- end -}}
+{{- end -}}
+
+{{/*
+Create chart name and version as used by the chart label.
+*/}}
+{{- define "zookeeper.chart" -}}
+{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/config-jmx-exporter.yaml b/kubernetes/common/music/charts/zookeeper/templates/config-jmx-exporter.yaml
new file mode 100644
index 0000000000..aeb9a2c031
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/config-jmx-exporter.yaml
@@ -0,0 +1,19 @@
+{{- if .Values.exporters.jmx.enabled }}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-jmx-exporter
+ labels:
+ app: {{ template "common.name" . }}
+ chart: {{ .Chart.Name }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.yml: |-
+ hostPort: 127.0.0.1:{{ .Values.env.JMXPORT }}
+ lowercaseOutputName: {{ .Values.exporters.jmx.config.lowercaseOutputName }}
+ rules:
+{{ .Values.exporters.jmx.config.rules | toYaml | indent 6 }}
+ ssl: false
+ startDelaySeconds: {{ .Values.exporters.jmx.config.startDelaySeconds }}
+{{- end }}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/job-chroots.yaml b/kubernetes/common/music/charts/zookeeper/templates/job-chroots.yaml
new file mode 100644
index 0000000000..38592ddeac
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/job-chroots.yaml
@@ -0,0 +1,62 @@
+{{- if .Values.jobs.chroots.enabled }}
+{{- $root := . }}
+{{- $job := .Values.jobs.chroots }}
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ template "common.fullname" . }}-chroots
+ annotations:
+ "helm.sh/hook": post-install,post-upgrade
+ "helm.sh/hook-weight": "-5"
+ "helm.sh/hook-delete-policy": hook-succeeded
+ labels:
+ app: {{ template "common.name" . }}
+ chart: {{ .Chart.Name }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ component: jobs
+ job: chroots
+spec:
+ activeDeadlineSeconds: {{ $job.activeDeadlineSeconds }}
+ backoffLimit: {{ $job.backoffLimit }}
+ completions: {{ $job.completions }}
+ parallelism: {{ $job.parallelism }}
+ template:
+ metadata:
+ labels:
+ app: {{ template "common.name" . }}
+ release: {{ .Release.Name }}
+ component: jobs
+ job: chroots
+ spec:
+ restartPolicy: {{ $job.restartPolicy }}
+ containers:
+ - name: main
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.image.pullPolicy }}
+ command:
+ - /bin/bash
+ - -o
+ - pipefail
+ - -euc
+ {{- $port := .Values.service.ports.client.port }}
+ - >
+ sleep 15;
+ export SERVER={{ template "common.fullname" $root }}:{{ $port }};
+ {{- range $job.config.create }}
+ echo '==> {{ . }}';
+ echo '====> Create chroot if does not exist.';
+ zkCli.sh -server {{ template "common.fullname" $root }}:{{ $port }} get {{ . }} 2>&1 >/dev/null | grep 'cZxid'
+ || zkCli.sh -server {{ template "common.fullname" $root }}:{{ $port }} create {{ . }} "";
+ echo '====> Confirm chroot exists.';
+ zkCli.sh -server {{ template "common.fullname" $root }}:{{ $port }} get {{ . }} 2>&1 >/dev/null | grep 'cZxid';
+ echo '====> Chroot exists.';
+ {{- end }}
+ env:
+ {{- range $key, $value := $job.env }}
+ - name: {{ $key | upper | replace "." "_" }}
+ value: {{ $value | quote }}
+ {{- end }}
+ resources:
+{{ toYaml $job.resources | indent 12 }}
+{{- end -}}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/poddisruptionbudget.yaml b/kubernetes/common/music/charts/zookeeper/templates/poddisruptionbudget.yaml
new file mode 100644
index 0000000000..7a9f3fe105
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/poddisruptionbudget.yaml
@@ -0,0 +1,17 @@
+apiVersion: policy/v1beta1
+kind: PodDisruptionBudget
+metadata:
+ name: {{ template "common.fullname" . }}
+ labels:
+ app: {{ template "common.name" . }}
+ chart: {{ .Chart.Name }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ component: server
+spec:
+ selector:
+ matchLabels:
+ app: {{ template "common.name" . }}
+ release: {{ .Release.Name }}
+ component: server
+{{ toYaml .Values.podDisruptionBudget | indent 2 }}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/service-headless.yaml b/kubernetes/common/music/charts/zookeeper/templates/service-headless.yaml
new file mode 100644
index 0000000000..70ebf6013e
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/service-headless.yaml
@@ -0,0 +1,21 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ template "common.fullname" . }}-headless
+ labels:
+ app: {{ template "common.name" . }}
+ chart: {{ .Chart.Name }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ clusterIP: None
+ ports:
+{{- range $key, $port := .Values.ports }}
+ - name: {{ $key }}
+ port: {{ $port.containerPort }}
+ targetPort: {{ $port.name }}
+ protocol: {{ $port.protocol }}
+{{- end }}
+ selector:
+ app: {{ template "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/service.yaml b/kubernetes/common/music/charts/zookeeper/templates/service.yaml
new file mode 100644
index 0000000000..6ac3066ecf
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/service.yaml
@@ -0,0 +1,23 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ labels:
+ app: {{ template "common.name" . }}
+ chart: {{ .Chart.Name }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+{{- with .Values.service.annotations }}
+{{ toYaml . | indent 4 }}
+{{- end }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{- range $key, $value := .Values.service.ports }}
+ - name: {{ $key }}
+{{ toYaml $value | indent 6 }}
+ {{- end }}
+ selector:
+ app: {{ template "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/statefulset.yaml b/kubernetes/common/music/charts/zookeeper/templates/statefulset.yaml
new file mode 100644
index 0000000000..1efd46657c
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/statefulset.yaml
@@ -0,0 +1,188 @@
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ template "common.fullname" . }}
+ labels:
+ app: {{ template "common.name" . }}
+ chart: {{ .Chart.Name }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ component: server
+spec:
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ - weight: 1
+ podAffinityTerm:
+ labelSelector:
+ matchExpressions:
+ - key: app
+ operator: In
+ values:
+ - "{{ .Chart.Name }}"
+ serviceName: {{ template "common.fullname" . }}-headless
+ replicas: {{ .Values.replicaCount }}
+ terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }}
+ selector:
+ matchLabels:
+ app: {{ template "common.name" . }}
+ release: {{ .Release.Name }}
+ component: server
+ updateStrategy:
+{{ toYaml .Values.updateStrategy | indent 4 }}
+ template:
+ metadata:
+ labels:
+ app: {{ template "common.name" . }}
+ release: {{ .Release.Name }}
+ component: server
+ {{- if .Values.podLabels }}
+ ## Custom pod labels
+ {{- range $key, $value := .Values.podLabels }}
+ {{ $key }}: {{ $value | quote }}
+ {{- end }}
+ {{- end }}
+ annotations:
+ {{- if .Values.podAnnotations }}
+ ## Custom pod annotations
+ {{- range $key, $value := .Values.podAnnotations }}
+ {{ $key }}: {{ $value | quote }}
+ {{- end }}
+ {{- end }}
+ spec:
+{{- if .Values.schedulerName }}
+ schedulerName: "{{ .Values.schedulerName }}"
+{{- end }}
+ securityContext:
+{{ toYaml .Values.securityContext | indent 8 }}
+ containers:
+
+ - name: zookeeper
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.image.pullPolicy }}
+ command:
+ - /bin/bash
+ - -xec
+ - zkGenConfig.sh && exec zkServer.sh start-foreground
+ ports:
+{{- range $key, $port := .Values.ports }}
+ - name: {{ $key }}
+{{ toYaml $port | indent 14 }}
+{{- end }}
+ livenessProbe:
+{{ toYaml .Values.livenessProbe | indent 12 }}
+ readinessProbe:
+{{ toYaml .Values.readinessProbe | indent 12 }}
+ env:
+ - name: ZK_REPLICAS
+ value: {{ .Values.replicaCount | quote }}
+ {{- range $key, $value := .Values.env }}
+ - name: {{ $key | upper | replace "." "_" }}
+ value: {{ $value | quote }}
+ {{- end }}
+ resources:
+{{ include "common.resources" . }}
+ volumeMounts:
+ - name: zookeeper-data
+ mountPath: /var/lib/zookeeper
+
+{{- if .Values.exporters.jmx.enabled }}
+ - name: jmx-exporter
+ image: "{{ .Values.exporters.jmx.image.repository }}:{{ .Values.exporters.jmx.image.tag }}"
+ imagePullPolicy: {{ .Values.exporters.jmx.image.pullPolicy }}
+ ports:
+ {{- range $key, $port := .Values.exporters.jmx.ports }}
+ - name: {{ $key }}
+{{ toYaml $port | indent 14 }}
+ {{- end }}
+ livenessProbe:
+{{ toYaml .Values.exporters.jmx.livenessProbe | indent 12 }}
+ readinessProbe:
+{{ toYaml .Values.exporters.jmx.readinessProbe | indent 12 }}
+ env:
+ - name: SERVICE_PORT
+ value: {{ .Values.exporters.jmx.ports.jmxxp.containerPort | quote }}
+ {{- with .Values.exporters.jmx.env }}
+ {{- range $key, $value := . }}
+ - name: {{ $key | upper | replace "." "_" }}
+ value: {{ $value | quote }}
+ {{- end }}
+ {{- end }}
+ resources:
+{{ toYaml .Values.exporters.jmx.resources | indent 12 }}
+ volumeMounts:
+ - name: config-jmx-exporter
+ mountPath: /opt/jmx_exporter/config.yml
+ subPath: config.yml
+{{- end }}
+
+{{- if .Values.exporters.zookeeper.enabled }}
+ - name: zookeeper-exporter
+ image: "{{ .Values.exporters.zookeeper.image.repository }}:{{ .Values.exporters.zookeeper.image.tag }}"
+ imagePullPolicy: {{ .Values.exporters.zookeeper.image.pullPolicy }}
+ args:
+ - -bind-addr=:{{ .Values.exporters.zookeeper.ports.zookeeperxp.containerPort }}
+ - -metrics-path={{ .Values.exporters.zookeeper.path }}
+ - -zookeeper=localhost:{{ .Values.ports.client.containerPort }}
+ - -log-level={{ .Values.exporters.zookeeper.config.logLevel }}
+ - -reset-on-scrape={{ .Values.exporters.zookeeper.config.resetOnScrape }}
+ ports:
+ {{- range $key, $port := .Values.exporters.zookeeper.ports }}
+ - name: {{ $key }}
+{{ toYaml $port | indent 14 }}
+ {{- end }}
+ livenessProbe:
+{{ toYaml .Values.exporters.zookeeper.livenessProbe | indent 12 }}
+ readinessProbe:
+{{ toYaml .Values.exporters.zookeeper.readinessProbe | indent 12 }}
+ env:
+ {{- range $key, $value := .Values.exporters.zookeeper.env }}
+ - name: {{ $key | upper | replace "." "_" }}
+ value: {{ $value | quote }}
+ {{- end }}
+ resources:
+{{ toYaml .Values.exporters.zookeeper.resources | indent 12 }}
+{{- end }}
+
+ {{- with .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml . | indent 8 }}
+ {{- end }}
+ {{- with .Values.affinity }}
+ affinity:
+{{ toYaml . | indent 8 }}
+ {{- end }}
+ {{- with .Values.tolerations }}
+ tolerations:
+{{ toYaml . | indent 8 }}
+ {{- end }}
+ {{- if (or .Values.exporters.jmx.enabled (not .Values.persistence.enabled)) }}
+ volumes:
+ {{- if .Values.exporters.jmx.enabled }}
+ - name: config-jmx-exporter
+ configMap:
+ name: {{ .Release.Name }}-jmx-exporter
+ {{- end }}
+ {{- if not .Values.persistence.enabled }}
+ - name: zookeeper-data
+ emptyDir: {}
+ {{- end }}
+ {{- end }}
+ {{- if .Values.persistence.enabled }}
+ volumeClaimTemplates:
+ - metadata:
+ name: zookeeper-data
+ labels:
+ app: {{ .Chart.Name }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ annotations:
+ volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass }}
+ spec:
+ storageClassName: {{ .Values.persistence.storageClass }}
+ accessModes:
+ - {{ .Values.persistence.accessMode | quote }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size | quote }}
+ {{- end }}
diff --git a/kubernetes/common/music/charts/zookeeper/templates/volumes.yaml b/kubernetes/common/music/charts/zookeeper/templates/volumes.yaml
new file mode 100644
index 0000000000..b0c05fdbfd
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/templates/volumes.yaml
@@ -0,0 +1,25 @@
+{{ if .Values.persistence.enabled }}
+{{- $root := . -}}
+{{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: {{ $root.Release.Name }}-{{ $root.Values.service.name }}-{{ $i }}
+ namespace: {{ $root.Release.Namespace }}
+ labels:
+ type: {{ $root.Values.persistence.storageType }}
+ app: {{ $root.Values.service.name }}
+ chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
+ release: {{ $root.Release.Name }}
+ heritage: {{ $root.Release.Service }}
+spec:
+ capacity:
+ storage: {{ $root.Values.persistence.size }}
+ accessModes:
+ - {{ $root.Values.persistence.accessMode }}
+ hostPath:
+ path: {{ $root.Values.persistence.mountPath }}/{{ $root.Release.Name }}/{{ $root.Values.persistence.mountSubPath }}-{{$i}}
+ persistentVolumeReclaimPolicy: {{ $root.Values.persistence.volumeReclaimPolicy }}
+{{ end }}
+{{ end }}
diff --git a/kubernetes/common/music/charts/zookeeper/values.yaml b/kubernetes/common/music/charts/zookeeper/values.yaml
new file mode 100644
index 0000000000..ea02e6151e
--- /dev/null
+++ b/kubernetes/common/music/charts/zookeeper/values.yaml
@@ -0,0 +1,284 @@
+## As weighted quorums are not supported, it is imperative that an odd number of replicas
+## be chosen. Moreover, the number of replicas should be either 1, 3, 5, or 7.
+##
+## ref: https://github.com/kubernetes/contrib/tree/master/statefulsets/zookeeper#stateful-set
+replicaCount: 3 # Desired quantity of ZooKeeper pods. This should always be (1,3,5, or 7)
+
+podDisruptionBudget:
+ maxUnavailable: 1 # Limits how many Zokeeper pods may be unavailable due to voluntary disruptions.
+
+terminationGracePeriodSeconds: 1800 # Duration in seconds a Zokeeper pod needs to terminate gracefully.
+
+## OnDelete requires you to manually delete each pod when making updates.
+## This approach is at the moment safer than RollingUpdate because replication
+## may be incomplete when replication source pod is killed.
+##
+## ref: http://blog.kubernetes.io/2017/09/kubernetes-statefulsets-daemonsets.html
+updateStrategy:
+ type: OnDelete # Pods will only be created when you manually delete old pods.
+
+## refs:
+## - https://github.com/kubernetes/contrib/tree/master/statefulsets/zookeeper
+## - https://github.com/kubernetes/contrib/blob/master/statefulsets/zookeeper/Makefile#L1
+image:
+ #repository: nexus3.onap.org:10001/library/zookeeper
+ #tag: 3.3
+ repository: gcr.io/google_samples/k8szk # Container image repository for zookeeper container.
+ tag: v3 # Container image tag for zookeeper container.
+ pullPolicy: IfNotPresent # Image pull criteria for zookeeper container.
+
+service:
+ name: zookeeper
+ type: ClusterIP # Exposes zookeeper on a cluster-internal IP.
+ annotations: {} # Arbitrary non-identifying metadata for zookeeper service.
+ ## AWS example for use with LoadBalancer service type.
+ # external-dns.alpha.kubernetes.io/hostname: zookeeper.cluster.local
+ # service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled: "true"
+ # service.beta.kubernetes.io/aws-load-balancer-internal: "true"
+ ports:
+ client:
+ port: 2181 # Service port number for client port.
+ targetPort: client # Service target port for client port.
+ protocol: TCP # Service port protocol for client port.
+
+
+ports:
+ client:
+ containerPort: 2181 # Port number for zookeeper container client port.
+ protocol: TCP # Protocol for zookeeper container client port.
+ election:
+ containerPort: 3888 # Port number for zookeeper container election port.
+ protocol: TCP # Protocol for zookeeper container election port.
+ server:
+ containerPort: 2888 # Port number for zookeeper container server port.
+ protocol: TCP # Protocol for zookeeper container server port.
+
+# Resource Limit flavor -By Default using small
+flavor: large
+# Segregation for Different environment (Small and Large)
+resources:
+ small:
+ limits:
+ cpu: 1
+ memory: 1Gi
+ requests:
+ cpu: 500m
+ memory: 500Mi
+ large:
+ limits:
+ cpu: 3
+ memory: 2Gi
+ requests:
+ cpu: 2
+ memory: 1Gi
+ unlimited: {}
+
+nodeSelector: {} # Node label-values required to run zookeeper pods.
+
+tolerations: [] # Node taint overrides for zookeeper pods.
+
+affinity: {} # Criteria by which pod label-values influence scheduling for zookeeper pods.
+affinity:
+ podAntiAffinity:
+ requiredDuringSchedulingIgnoredDuringExecution:
+ - topologyKey: "kubernetes.io/hostname"
+ labelSelector:
+ matchLabels:
+ release: zookeeper
+
+podAnnotations: {} # Arbitrary non-identifying metadata for zookeeper pods.
+
+podLabels: {} # Key/value pairs that are attached to zookeeper pods.
+
+livenessProbe:
+ exec:
+ command:
+ - zkOk.sh
+ initialDelaySeconds: 20
+
+readinessProbe:
+ exec:
+ command:
+ - zkOk.sh
+ initialDelaySeconds: 20
+
+securityContext:
+ fsGroup: 1000
+ #runAsUser: 1000
+
+persistence:
+ enabled: true
+ ## zookeeper 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)
+ ##
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ mountPath: /dockerdata-nfs
+ mountSubPath: music/zookeeper
+ storageType: local
+ storageClass: ""
+ size: 4Gi
+
+## Exporters query apps for metrics and make those metrics available for
+## Prometheus to scrape.
+exporters:
+
+ jmx:
+ enabled: false
+ image:
+ repository: sscaling/jmx-prometheus-exporter
+ tag: 0.3.0
+ pullPolicy: IfNotPresent
+ config:
+ lowercaseOutputName: false
+ rules:
+ - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+)><>(\\w+)"
+ name: "zookeeper_$2"
+ - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+), name1=replica.(\\d+)><>(\\w+)"
+ name: "zookeeper_$3"
+ labels:
+ replicaId: "$2"
+ - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+), name1=replica.(\\d+), name2=(\\w+)><>(\\w+)"
+ name: "zookeeper_$4"
+ labels:
+ replicaId: "$2"
+ memberType: "$3"
+ - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+), name1=replica.(\\d+), name2=(\\w+), name3=(\\w+)><>(\\w+)"
+ name: "zookeeper_$4_$5"
+ labels:
+ replicaId: "$2"
+ memberType: "$3"
+ startDelaySeconds: 30
+ env: {}
+ resources: {}
+ path: /metrics
+ ports:
+ jmxxp:
+ containerPort: 9404
+ protocol: TCP
+ livenessProbe:
+ httpGet:
+ path: /metrics
+ port: jmxxp
+ initialDelaySeconds: 30
+ periodSeconds: 15
+ timeoutSeconds: 60
+ failureThreshold: 8
+ successThreshold: 1
+ readinessProbe:
+ httpGet:
+ path: /metrics
+ port: jmxxp
+ initialDelaySeconds: 30
+ periodSeconds: 15
+ timeoutSeconds: 60
+ failureThreshold: 8
+ successThreshold: 1
+
+ zookeeper:
+ enabled: false
+ image:
+ repository: josdotso/zookeeper-exporter
+ tag: v1.1.2
+ pullPolicy: IfNotPresent
+ config:
+ logLevel: info
+ resetOnScrape: "true"
+ env: {}
+ resources: {}
+ path: /metrics
+ ports:
+ zookeeperxp:
+ containerPort: 9141
+ protocol: TCP
+ livenessProbe:
+ httpGet:
+ path: /metrics
+ port: zookeeperxp
+ initialDelaySeconds: 30
+ periodSeconds: 15
+ timeoutSeconds: 60
+ failureThreshold: 8
+ successThreshold: 1
+ readinessProbe:
+ httpGet:
+ path: /metrics
+ port: zookeeperxp
+ initialDelaySeconds: 30
+ periodSeconds: 15
+ timeoutSeconds: 60
+ failureThreshold: 8
+ successThreshold: 1
+
+env:
+
+ ## Options related to JMX exporter.
+ JMXAUTH: "false"
+ JMXDISABLE: "false"
+ JMXPORT: 1099
+ JMXSSL: "false"
+
+ ## The port on which the server will accept client requests.
+ ZK_CLIENT_PORT: 2181
+
+ ## The port on which the ensemble performs leader election.
+ ZK_ELECTION_PORT: 3888
+
+ ## The JVM heap size.
+ ZK_HEAP_SIZE: 2G
+
+ ## The number of Ticks that an ensemble member is allowed to perform leader
+ ## election.
+ ZK_INIT_LIMIT: 5
+
+ ## The Log Level that for the ZooKeeper processes logger.
+ ## Choices are `TRACE,DEBUG,INFO,WARN,ERROR,FATAL`.
+ ZK_LOG_LEVEL: INFO
+
+ ## The maximum number of concurrent client connections that
+ ## a server in the ensemble will accept.
+ ZK_MAX_CLIENT_CNXNS: 60
+
+ ## The maximum session timeout that the ensemble will allow a client to request.
+ ## Upstream default is `20 * ZK_TICK_TIME`
+ ZK_MAX_SESSION_TIMEOUT: 40000
+
+ ## The minimum session timeout that the ensemble will allow a client to request.
+ ## Upstream default is `2 * ZK_TICK_TIME`.
+ ZK_MIN_SESSION_TIMEOUT: 4000
+
+ ## The delay, in hours, between ZooKeeper log and snapshot cleanups.
+ ZK_PURGE_INTERVAL: 0
+
+ ## The port on which the leader will send events to followers.
+ ZK_SERVER_PORT: 2888
+
+ ## The number of snapshots that the ZooKeeper process will retain if
+ ## `ZK_PURGE_INTERVAL` is set to a value greater than `0`.
+ ZK_SNAP_RETAIN_COUNT: 3
+
+ ## The number of Tick by which a follower may lag behind the ensembles leader.
+ ZK_SYNC_LIMIT: 10
+
+ ## The number of wall clock ms that corresponds to a Tick for the ensembles
+ ## internal time.
+ ZK_TICK_TIME: 2000
+
+jobs:
+ chroots:
+ enabled: false
+ activeDeadlineSeconds: 300
+ backoffLimit: 5
+ completions: 1
+ config:
+ create: []
+ # - /kafka
+ # - /ureplicator
+ env: []
+ parallelism: 1
+ resources: {}
+ restartPolicy: Never
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml b/kubernetes/common/music/requirements.yaml
index 14f1f9a82d..220dc4619b 100644
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml
+++ b/kubernetes/common/music/requirements.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml b/kubernetes/common/music/values.yaml
index 64e0550da2..51c467cf2f 100644
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml
+++ b/kubernetes/common/music/values.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Copyright © 2018 AT&T, Amdocs, Bell Canada Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,42 +12,28 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# Default values for mariadb.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-global: # global defaults
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
nodePortPrefix: 302
- persistence: {}
+ repository: nexus3.onap.org:10001
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
-# application image
-repository: nexus3.onap.org:10001
-image: zookeeper:3.4
-pullPolicy: Always
+# flag to enable debugging - application support required
+debugEnabled: false
# default number of instances
-replicaCount: 1
+replicaCount: 3
+
nodeSelector: {}
+
affinity: {}
-# Resource Limit flavor -By Default using small
-flavor: small
-# Segregation for Different environment (Small and Large)
-resources:
- small:
- limits:
- memory: 4Gi
- cpu: 2000m
- requests:
- memory: 1Gi
- cpu: 500m
- large:
- limits:
- memory: 8Gi
- cpu: 4000m
- requests:
- memory: 2Gi
- cpu: 1000m
- unlimited: {}
+
# probe configuration parameters
liveness:
initialDelaySeconds: 10
@@ -56,14 +41,10 @@ liveness:
# 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: oof-has-zk
- externalPort: 2181
- internalPort: 2181
- portName: oof-has-zookeeper
-ingress:
- enabled: false
+
+resources: {}
+
diff --git a/kubernetes/esr/charts/esr-gui/values.yaml b/kubernetes/esr/charts/esr-gui/values.yaml
index 9beb17d168..004d473b99 100644
--- a/kubernetes/esr/charts/esr-gui/values.yaml
+++ b/kubernetes/esr/charts/esr-gui/values.yaml
@@ -24,7 +24,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/aai/esr-gui:1.1.0
+image: onap/aai/esr-gui:1.2.1
pullPolicy: Always
msbaddr: msb-iag.{{ include "common.namespace" . }}:80
diff --git a/kubernetes/esr/charts/esr-server/values.yaml b/kubernetes/esr/charts/esr-server/values.yaml
index 8f66148169..ce5688f267 100644
--- a/kubernetes/esr/charts/esr-server/values.yaml
+++ b/kubernetes/esr/charts/esr-server/values.yaml
@@ -27,7 +27,7 @@ subChartsOnly:
# application image
repository: nexus3.onap.org:10001
-image: onap/aai/esr-server:1.1.0
+image: onap/aai/esr-server:1.2.1
pullPolicy: Always
msbaddr: msb-iag.{{ include "common.namespace" . }}:80
diff --git a/kubernetes/multicloud/charts/multicloud-azure/values.yaml b/kubernetes/multicloud/charts/multicloud-azure/values.yaml
index 7b9d9c7e4b..1a168e9249 100644
--- a/kubernetes/multicloud/charts/multicloud-azure/values.yaml
+++ b/kubernetes/multicloud/charts/multicloud-azure/values.yaml
@@ -24,7 +24,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/multicloud/azure:1.2.0-SNAPSHOT
+image: onap/multicloud/azure:1.2.0
pullPolicy: Always
#Istio sidecar injection policy
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml
index 12bbeefb12..7589a0a3b4 100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - oof-has-music
+ - oof-has-controller
env:
- name: NAMESPACE
valueFrom:
@@ -46,6 +46,38 @@ spec:
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-onboard"
+ 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" . }}-onboard-readiness
+ - command:
+ - sh
+ - -c
+ - resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null -k --write-out %{http_code} https://aaf-sms.{{ include "common.namespace" . }}:10443/v1/sms/domain/has/secret);
+ echo $resp;
+ sleep 2;
+ done
+ 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" . }}-has-sms-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
@@ -84,6 +116,9 @@ spec:
- mountPath: /usr/local/bin/log.conf
name: {{ .Values.global.commonConfigPrefix }}-config
subPath: log.conf
+ - mountPath: /usr/local/bin/AAF_RootCA.cer
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: AAF_RootCA.cer
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -106,5 +141,7 @@ spec:
path: conductor.conf
- key: log.conf
path: log.conf
+ - key: AAF_RootCA.cer
+ path: AAF_RootCA.cer
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql
deleted file mode 100644
index c2593eb1dc..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
-CREATE KEYSPACE conductor WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
-
-CREATE TABLE conductor.plans (
- id text PRIMARY KEY,
- created bigint,
- message text,
- name text,
- recommend_max int,
- reservation_counter int,
- reservation_owner text,
- solution text,
- solver_counter int,
- solver_owner text,
- status text,
- template text,
- timeout int,
- translation text,
- translation_counter int,
- translation_owner text,
- updated bigint,
- vector_ts text
-);
-
-CREATE INDEX conductor_plans_index ON conductor.plans(status);
-
-CREATE KEYSPACE conductor_rpc WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
-
-CREATE TABLE conductor_rpc.controller (
- id text PRIMARY KEY,
- action text,
- args text,
- created bigint,
- ctxt text,
- failure text,
- method text,
- owner text,
- response text,
- status text,
- updated bigint,
- vector_ts text
-);
-
-CREATE TABLE conductor_rpc.data (
- id text PRIMARY KEY,
- action text,
- args text,
- created bigint,
- ctxt text,
- failure text,
- method text,
- owner text,
- response text,
- status text,
- updated bigint,
- vector_ts text
-);
-
-INSERT INTO admin.keyspace_master (
-uuid, application_name, is_aaf, is_api, keyspace_name, password,username)
-VALUES ( now(), 'conductor', False, True, 'conductor', 'c0nduct0r', 'conductor');
-
-INSERT INTO admin.keyspace_master (
-uuid, application_name, is_aaf, is_api, keyspace_name, password, username)
-VALUES( now(), 'conductor', False, True, 'conductor_rpc', 'c0nduct0r', 'conductor');
-
-CREATE ROLE IF NOT EXISTS conductor WITH PASSWORD = 'c0nduct0r' AND LOGIN = true;
-
-GRANT ALL PERMISSIONS on KEYSPACE conductor to 'conductor';
-
-GRANT ALL PERMISSIONS on KEYSPACE conductor_rpc to 'conductor';
-
-INSERT INTO conductor.plans (id, created, message, name, recommend_max, solution, status, template,timeout, translation,updated) VALUES('healthcheck',1479482603641,'','foo',1,'{"healthcheck": " healthcheck"}','solved','{"healthcheck": "healthcheck"}',3600,'{"healthcheck": "healthcheck"}',1484324150629);
-
-
-
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt
deleted file mode 100644
index 974fae450e..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-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.name" . }})
- 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.name" . }}'
- export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -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 }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml
deleted file mode 100644
index 6d7dad9bc1..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-docker-entry-initd
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
-
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml
deleted file mode 100644
index aed92e5768..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml
+++ /dev/null
@@ -1,105 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: {{ include "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:
- 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.internalPort2 }}
- - containerPort: {{ .Values.service.internalPort3 }}
- - containerPort: {{ .Values.service.internalPort4 }}
- - containerPort: {{ .Values.service.internalPort5 }}
- {{ if eq .Values.liveness.enabled true }}
- livenessProbe:
- exec:
- command:
- - /bin/bash
- - -c
- - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end }}
- readinessProbe:
- exec:
- command:
- - /bin/bash
- - -c
- - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
- env:
- - name: CASSUSER
- value: "{{ .Values.config.cassandraUsername }}"
- - name: CASSPASS
- value: "{{ .Values.config.cassandraPassword }}"
- - name: POD_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - name: cassandra-docker-entrypoint-initdb
- mountPath: /docker-entrypoint-initdb.d/zzz_conductor.cql
- subPath: zzz_conductor.cql
- - name: {{ include "common.fullname" . }}-data
- mountPath: /var/lib/cassandra/data
- resources:
-{{ include "common.resources" . | indent 12 }}
- {{- if .Values.nodeSelector }}
- nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
- {{- end -}}
- {{- if .Values.affinity }}
- affinity:
-{{ toYaml .Values.affinity | indent 10 }}
- {{- end }}
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: cassandra-docker-entrypoint-initdb
- configMap:
- name: {{ include "common.fullname" . }}-docker-entry-initd
- {{- if .Values.persistence.enabled }}
- - name: {{ include "common.fullname" . }}-data
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}
- {{- else }}
- emptyDir: {}
- {{- end }}
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml
deleted file mode 100644
index 0fa33fc6fb..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-{{- if 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 -}}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml
deleted file mode 100644
index 0f4de0c9e2..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-{{- if 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 -}}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml
deleted file mode 100644
index 7ec7f07020..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "common.servicename" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.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 }}
- targetPort: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.portName }}
- - port: {{ .Values.service.externalPort2 }}
- targetPort: {{ .Values.service.internalPort2 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.portName }}2
- - port: {{ .Values.service.externalPort3 }}
- targetPort: {{ .Values.service.internalPort3 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
- name: {{ .Values.service.portName }}3
- - port: {{ .Values.service.externalPort4 }}
- targetPort: {{ .Values.service.internalPort4 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
- name: {{ .Values.service.portName }}4
- - port: {{ .Values.service.externalPort5 }}
- targetPort: {{ .Values.service.internalPort5 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
- name: {{ .Values.service.portName }}5
-
- {{- else -}}
- - port: {{ .Values.service.externalPort }}
- targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.portName }}
- - port: {{ .Values.service.externalPort2 }}
- targetPort: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.portName }}2
- - port: {{ .Values.service.externalPort3 }}
- targetPort: {{ .Values.service.internalPort3 }}
- name: {{ .Values.service.portName }}3
- - port: {{ .Values.service.externalPort4 }}
- targetPort: {{ .Values.service.internalPort4 }}
- name: {{ .Values.service.portName }}4
- - port: {{ .Values.service.externalPort5 }}
- targetPort: {{ .Values.service.internalPort5 }}
- name: {{ .Values.service.portName }}5
- {{- end}}
- selector:
- app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml
index 00f26255f7..c5646f6453 100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - oof-has-music
+ - music-tomcat
env:
- name: NAMESPACE
valueFrom:
@@ -46,6 +46,38 @@ spec:
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-onboard"
+ 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" . }}-onboard-readiness
+ - command:
+ - sh
+ - -c
+ - resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null -k --write-out %{http_code} https://aaf-sms.{{ include "common.namespace" . }}:10443/v1/sms/domain/has/secret);
+ echo $resp;
+ sleep 2;
+ done
+ 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" . }}-cont-sms-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
@@ -87,6 +119,9 @@ spec:
- mountPath: /usr/local/bin/healthy.sh
name: {{ .Values.global.commonConfigPrefix }}-config
subPath: healthy.sh
+ - mountPath: /usr/local/bin/AAF_RootCA.cer
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: AAF_RootCA.cer
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -111,5 +146,7 @@ spec:
path: log.conf
- key: healthy.sh
path: healthy.sh
+ - key: AAF_RootCA.cer
+ path: AAF_RootCA.cer
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml
index 3f64923a0e..e4ec820b1f 100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - oof-has-music
+ - music-tomcat
env:
- name: NAMESPACE
valueFrom:
@@ -46,6 +46,52 @@ spec:
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-onboard"
+ 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" . }}-onboard-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-healthcheck"
+ 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" . }}-health-readiness
+ - command:
+ - sh
+ - -c
+ - resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null -k --write-out %{http_code} https://aaf-sms.{{ include "common.namespace" . }}:10443/v1/sms/domain/has/secret);
+ echo $resp;
+ sleep 2;
+ done
+ 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" . }}-data-sms-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh b/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh
deleted file mode 100755
index dd2c550f11..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-OUT=$(curl -o /dev/null -s -w "%{http_code}\n" \
- http://localhost:8080/MUSIC/rest/v2/admin/onboardAppWithMusic \
- -H 'Cache-Control: no-cache' \
- -H 'Content-Type: application/json' \
- -H 'Postman-Token: 705d4a9d-aaf2-40b4-914a-e0ce1a79534c' \
- -d '{
- "appname": "conductor",
- "userId" : "conductor",
- "isAAF" : false,
- "password" : "c0nduct0r"
-}
-')
-
-if [ ${OUT} = "200" ]; then
- echo "Success"
- echo 1 > /tmp/onboarded
- exit 0;
-else
- echo "Failure"
- exit 1;
-fi
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt
deleted file mode 100644
index 2088e3305d..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-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 }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml
index a967bb50e1..7c30360cd6 100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - oof-has-music
+ - music-tomcat
env:
- name: NAMESPACE
valueFrom:
@@ -46,6 +46,52 @@ spec:
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-onboard"
+ 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" . }}-onboard-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-healthcheck"
+ 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" . }}-health-readiness
+ - command:
+ - sh
+ - -c
+ - resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null -k --write-out %{http_code} https://aaf-sms.{{ include "common.namespace" .}}:10443/v1/sms/domain/has/secret);
+ echo $resp;
+ sleep 2;
+ done
+ 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" . }}-resrv-sms-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
@@ -87,6 +133,9 @@ spec:
- mountPath: /usr/local/bin/healthy.sh
name: {{ .Values.global.commonConfigPrefix }}-config
subPath: healthy.sh
+ - mountPath: /usr/local/bin/AAF_RootCA.cer
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: AAF_RootCA.cer
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -111,5 +160,7 @@ spec:
path: log.conf
- key: healthy.sh
path: healthy.sh
+ - key: AAF_RootCA.cer
+ path: AAF_RootCA.cer
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml
index 26ed7c75e3..0cc4ded3b5 100755
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - oof-has-music
+ - music-tomcat
env:
- name: NAMESPACE
valueFrom:
@@ -46,6 +46,52 @@ spec:
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-onboard"
+ 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" . }}-onboard-readiness
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-oof-has-healthcheck"
+ 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" . }}-health-readiness
+ - command:
+ - sh
+ - -c
+ - resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null -k --write-out %{http_code} https://aaf-sms.{{ include "common.namespace" . }}:10443/v1/sms/domain/has/secret);
+ echo $resp;
+ sleep 2;
+ done
+ 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" . }}-solvr-sms-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
@@ -87,6 +133,9 @@ spec:
- mountPath: /usr/local/bin/healthy.sh
name: {{ .Values.global.commonConfigPrefix }}-config
subPath: healthy.sh
+ - mountPath: /usr/local/bin/AAF_RootCA.cer
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: AAF_RootCA.cer
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -111,5 +160,7 @@ spec:
path: log.conf
- key: healthy.sh
path: healthy.sh
+ - key: AAF_RootCA.cer
+ path: AAF_RootCA.cer
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt
deleted file mode 100644
index 974fae450e..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-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.name" . }})
- 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.name" . }}'
- export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -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 }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml
deleted file mode 100644
index 888bfd0555..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: {{ include "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:
- containers:
- - name: {{ include "common.name" . }}
- image: {{ include "common.repository" . }}/{{ .Values.image }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- ports:
- - containerPort: {{ .Values.service.internalPort }}
- {{- if .Values.liveness.enabled }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{end -}}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- resources:
-{{ include "common.resources" . | indent 12 }}
- {{- if .Values.nodeSelector }}
- nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
- {{- end -}}
- {{- if .Values.affinity }}
- affinity:
-{{ toYaml .Values.affinity | indent 10 }}
- {{- end }}
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml
deleted file mode 100644
index f2eed43608..0000000000
--- a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "common.servicename" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.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.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
- {{- else -}}
- - port: {{ .Values.service.externalPort }}
- targetPort: {{ .Values.service.internalPort }}
- {{- end}}
- name: {{ .Values.service.portName }}
- selector:
- app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
diff --git a/kubernetes/oof/charts/oof-has/requirements.yaml b/kubernetes/oof/charts/oof-has/requirements.yaml
index 14f1f9a82d..cda496bd87 100755
--- a/kubernetes/oof/charts/oof-has/requirements.yaml
+++ b/kubernetes/oof/charts/oof-has/requirements.yaml
@@ -17,3 +17,6 @@ dependencies:
- name: common
version: ~3.0.0
repository: '@local'
+ - name: music
+ version: ~3.0.0
+ repository: '@local'
diff --git a/kubernetes/oof/charts/oof-has/resources/config/conductor.conf b/kubernetes/oof/charts/oof-has/resources/config/conductor.conf
index 00a65ce30d..32213319a7 100755
--- a/kubernetes/oof/charts/oof-has/resources/config/conductor.conf
+++ b/kubernetes/oof/charts/oof-has/resources/config/conductor.conf
@@ -1,5 +1,5 @@
# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T,VMware
+# Modifications Copyright © 2018 AT&T,VMware, Intel Corporation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -23,7 +23,14 @@
#api_paste_config = api_paste.ini
# Music keyspace for content (string value)
-keyspace = conductor
+#keyspace = conductor
+
+# Delay time (Seconds) for MUSIC requests. Set it to 2 seconds by default.
+# (integer value)
+#delay_time = 2
+
+# (boolean value)
+#HPA_enabled = true
#
# From oslo.log
@@ -32,14 +39,9 @@ keyspace = conductor
# If set to true, the logging level will be set to DEBUG instead of the default
# INFO level. (boolean value)
# Note: This option can be changed without restarting.
+#debug = false
debug = true
-# DEPRECATED: If set to false, the logging level will be set to WARNING instead
-# of the default INFO level. (boolean value)
-# This option is deprecated for removal.
-# Its value may be silently ignored in the future.
-#verbose = true
-
# The name of a logging configuration file. This file is appended to any
# existing logging configuration files. For details about logging configuration
# files, see the Python logging module documentation. Note that when logging
@@ -48,7 +50,8 @@ debug = true
# example, logging_context_format_string). (string value)
# Note: This option can be changed without restarting.
# Deprecated group/name - [DEFAULT]/log_config
-# log_config_append = /usr/local/bin/log.conf
+#log_config_append = <None>
+log_config_append = /usr/local/bin/log.conf
# Defines the format string for %%(asctime)s in log records. Default:
# %(default)s . This option is ignored if log_config_append is set. (string
@@ -78,10 +81,20 @@ debug = true
# is set. (boolean value)
#use_syslog = false
+# Enable journald for logging. If running in a systemd environment you may wish
+# to enable journal support. Doing so will use the journal native protocol
+# which includes structured metadata in addition to log messages.This option is
+# ignored if log_config_append is set. (boolean value)
+#use_journal = false
+
# Syslog facility to receive log lines. This option is ignored if
# log_config_append is set. (string value)
#syslog_log_facility = LOG_USER
+# Use JSON formatting for logging. This option is ignored if log_config_append
+# is set. (boolean value)
+#use_json = false
+
# Log output to standard error. This option is ignored if log_config_append is
# set. (boolean value)
#use_stderr = false
@@ -106,7 +119,7 @@ debug = true
# List of package logging levels in logger=LEVEL pairs. This option is ignored
# if log_config_append is set. (list value)
-#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
+#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
# Enables or disables publication of error events. (boolean value)
#publish_errors = false
@@ -135,6 +148,56 @@ debug = true
#fatal_deprecations = false
+[aaf_authentication]
+
+#
+# From conductor
+#
+
+# is_aaf_enabled. (boolean value)
+is_aaf_enabled = false
+
+# aaf_cache_expiry_hrs. (integer value)
+#aaf_cache_expiry_hrs = 3
+
+# aaf_url. (string value)
+#aaf_url = http://aaf-service:8100/authz/perms/user/
+aaf_url = http://{{.Values.config.aaf.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aaf.port}}/authz/perms/user/
+
+# aaf_retries. (integer value)
+#aaf_retries = 3
+
+# aaf_timeout. (integer value)
+#aaf_timeout = 100
+
+# aaf_user_roles. (list value)
+#aaf_user_roles = {"type": "org.onap.oof","instance": "plans","action": "GET"},{"type": "org.onap.oof","instance": "plans","action": "POST"}
+
+
+[aaf_sms]
+
+#
+# From conductor
+#
+
+# Base URL for SMS, up to and not including the version, and without a trailing
+# slash. (string value)
+aaf_sms_url = https://{{.Values.config.sms.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.sms.port}}
+
+
+# Timeout for SMS API Call (integer value)
+#aaf_sms_timeout = 30
+
+# Path to the cacert that will be used to verify If this is None, verify will
+# be False and the server certis not verified by the client. (string value)
+#aaf_ca_certs = AAF_RootCA.cer
+aaf_ca_certs = /usr/local/bin/AAF_RootCA.cer
+
+# Domain UUID - A unique UUID generated when the domainfor HAS is created by
+# administrator during deployment (string value)
+#secret_domain = has
+
+
[aai]
#
@@ -142,7 +205,12 @@ debug = true
#
# Interval with which to refresh the local cache, in minutes. (integer value)
+#cache_refresh_interval = 1440
cache_refresh_interval = 1
+
+# Interval with which to refresh the local complex cache, in minutes. (integer
+# value)
+#complex_cache_refresh_interval = 1440
complex_cache_refresh_interval = 60
# Data Store table prefix. (string value)
@@ -152,6 +220,12 @@ complex_cache_refresh_interval = 60
# trailing slash. (string value)
server_url = https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}/aai
+# Timeout for A&AI Rest Call (string value)
+#aai_rest_timeout = 30
+
+# Number of retry for A&AI Rest Call (string value)
+#aai_retries = 3
+
# The version of A&AI in v# format. (string value)
server_url_version = v14
@@ -164,13 +238,13 @@ certificate_key_file =
# Certificate Authority Bundle file in pem format. Must contain the appropriate
# trust chain for the Certificate file. (string value)
-#certificate_authority_bundle_file = /opt/app/conductor/etc/certs/ca_bundle.pem
-certificate_authority_bundle_file =/usr/local/bin/AAF_RootCA.cer
+#certificate_authority_bundle_file = certificate_authority_bundle.pem
+certificate_authority_bundle_file = /usr/local/bin/AAF_RootCA.cer
-# Basic Authentication Username (string value)
+# Username for AAI. (string value)
username = OOF
-# Basic Authentication Password (string value)
+# Password for AAI. (string value)
password = OOF
@@ -189,13 +263,24 @@ password = OOF
[conductor_api]
-# Basic Authentication Username (string value)
+#
+# From conductor
+#
+
+# Base URL for plans. (string value)
+#server_url =
+
+# username for plans. (string value)
+#username =
username = admin1
-# Basic Authentication Password (string value)
+# password for plans. (string value)
+#password =
password = plan.15
-basic_auth_secure = False
+# auth toggling. (boolean value)
+basic_auth_secure = true
+
[controller]
@@ -205,6 +290,7 @@ basic_auth_secure = False
# Timeout for planning requests. Default value is 10. (integer value)
# Minimum value: 1
+#timeout = 10
timeout = 200
# Maximum number of result sets to return. Default value is 1. (integer value)
@@ -215,11 +301,47 @@ timeout = 200
# Minimum value: 1
#workers = 1
+# Set to True when controller will run in active-active mode. When set to
+# False, controller will flush any abandoned messages at startup. The
+# controller always restarts abandoned template translations at startup.
+# (boolean value)
+#concurrent = false
+concurrent = true
+
# Time between checking for new plans. Default value is 1. (integer value)
# Minimum value: 1
#polling_interval = 1
+
+# (integer value)
+# Minimum value: 1
+#max_translation_counter = 1
+
+
+[data]
+
+#
+# From conductor
+#
+
+# Number of workers for data service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Set to True when data will run in active-active mode. When set to False, data
+# will flush any abandoned messages at startup. (boolean value)
+#concurrent = false
concurrent = true
+# Default value is -8000, which is the diameter of the earth. The distance
+# cannot larger than this value (floating point value)
+#existing_placement_cost = -8000.0
+
+# (floating point value)
+#cloud_candidate_cost = 2.0
+
+# (floating point value)
+#service_candidate_cost = 1.0
+
[inventory_provider]
@@ -238,16 +360,21 @@ concurrent = true
#
# Music keyspace for messages (string value)
-keyspace = conductor_rpc
+#keyspace = conductor_rpc
# Wait interval while checking for a message response. Default value is 1
# second. (integer value)
# Minimum value: 1
#check_interval = 1
-# Overall message response timeout. Default value is 10 seconds. (integer
+# Overall message response timeout. Default value is 120 seconds. (integer
# value)
# Minimum value: 1
+#response_timeout = 120
+
+# Timeout for detecting a VM is down, and other VMs can pick the plan up.
+# Default value is 5 minutes. (integer value) (integer value)
+# Minimum value: 1
timeout = 300
# Number of workers for messaging service. Default value is 1. (integer value)
@@ -262,19 +389,36 @@ timeout = 300
#debug = false
+[multicloud]
+
+#
+# From conductor
+#
+
+# Base URL for Multicloud without a trailing slash. (string value)
+#server_url = http://msb.onap.org/api/multicloud
+server_url = http://{{.Values.config.msb.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.msb.port}}/api/multicloud
+
+# Timeout for Multicloud Rest Call (string value)
+#multicloud_rest_timeout = 30
+
+# Number of retry for Multicloud Rest Call (string value)
+#multicloud_retries = 3
+
+# The version of Multicloud API. (string value)
+#server_url_version = v0
+
+
[music_api]
#
# From conductor
#
-music_new_version = True
+
# Base URL for Music REST API without a trailing slash. (string value)
-server_url = http://oof-has-music:8080/MUSIC/rest/v2
+#server_url = http://oof-has-music:8080/MUSIC/rest/v2
+server_url = http://{{.Values.config.music.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.music.port}}/MUSIC/rest/v2
version = v2
-music_version = "2.5.3"
-aafuser = conductor
-aafpass = c0nduct0r
-aafns = conductor
# DEPRECATED: List of hostnames (round-robin access) (list value)
# This option is deprecated for removal.
@@ -294,21 +438,104 @@ aafns = conductor
# Reason: Use server_url instead
#path = <None>
+# Socket connection timeout (floating point value)
+#connect_timeout = 3.05
+
+# Socket read timeout (floating point value)
+#read_timeout = 12.05
+
# Lock timeout (integer value)
#lock_timeout = 10
+
+# Replication factor (integer value)
+#replication_factor = 1
replication_factor = 1
-# Log debug messages. Default value is False. (boolean value)
-#debug = false
# Use mock API (boolean value)
#mock = false
-# Socket connection timeout (floating point value)
-connect_timeout = 3.05
+# (string value)
+#music_topology = SimpleStrategy
-# Socket read timeout (floating point value)
-read_timeout = 12.05
+# Name of the first data center (string value)
+#first_datacenter_name = <None>
+
+# Number of replicas in first data center (integer value)
+#first_datacenter_replicas = <None>
+
+# Name of the second data center (string value)
+#second_datacenter_name = <None>
+
+# Number of replicas in second data center (integer value)
+#second_datacenter_replicas = <None>
+
+# Name of the third data center (string value)
+#third_datacenter_name = <None>
+
+# Number of replicas in third data center (integer value)
+#third_datacenter_replicas = <None>
+
+# new or old version (boolean value)
+#music_new_version = <None>
+music_new_version = True
+
+# for version (string value)
+#music_version = <None>
+music_version = "3.0.21"
+
+# username value that used for creating basic authorization header (string
+# value)
+#aafuser = <None>
+aafuser = conductor
+
+# password value that used for creating basic authorization header (string
+# value)
+#aafpass = <None>
+aafpass = c0nduct0r
+
+# AAF namespace field used in MUSIC request header (string value)
+#aafns = <None>
+aafns = conductor
+
+
+[prometheus]
+
+#
+# From conductor
+#
+
+# Prometheus Metrics Endpoint (list value)
+#metrics_port = 8000,8001,8002,8003,8004
+
+
+[reservation]
+
+#
+# From conductor
+#
+# Number of workers for reservation service. Default value is 1. (integer
+# value)
+# Minimum value: 1
+#workers = 1
+
+# Number of times reservation/release should be attempted. (integer value)
+#reserve_retries = 1
+
+# Timeout for detecting a VM is down, and other VMs can pick the plan up and
+# resereve. Default value is 600 seconds. (integer value) (integer value)
+# Minimum value: 1
+#timeout = 600
+
+# Set to True when reservation will run in active-active mode. When set to
+# False, reservation will restart any orphaned reserving requests at startup.
+# (boolean value)
+#concurrent = false
+concurrent = true
+
+# (integer value)
+# Minimum value: 1
+#max_reservation_counter = 1
[sdnc]
@@ -324,13 +551,22 @@ read_timeout = 12.05
#table_prefix = sdnc
# Base URL for SDN-C, up to and including the version. (string value)
+#server_url = https://controller:8443/restconf/
server_url = https://sdncodl-conexus-e2e.ecomp.cci.att.com:8543/restconf/
# Basic Authentication Username (string value)
+#username = <None>
username = admin
# Basic Authentication Password (string value)
-password = sdnc.15
+#password = <None>
+password = Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# Timeout for SDNC Rest Call (string value)
+#sdnc_rest_timeout = 30
+
+# Retry Numbers for SDNC Rest Call (string value)
+#sdnc_retries = 3
[service_controller]
@@ -353,41 +589,32 @@ password = sdnc.15
# Minimum value: 1
#workers = 1
+# The timeout value for solver service. Default value is 480 seconds. (integer
+# value)
+# Minimum value: 1
+#solver_timeout = 480
+
# Set to True when solver will run in active-active mode. When set to False,
# solver will restart any orphaned solving requests at startup. (boolean value)
#concurrent = false
concurrent = true
+# Timeout for detecting a VM is down, and other VMs can pick the plan up. This
+# value should be larger than solver_timeoutDefault value is 10 minutes.
+# (integer value) (integer value)
+# Minimum value: 1
+#timeout = 600
-
-[reservation]
-concurrent = true
-
-
-[multicloud]
-
-#
-# From conductor
-#
-
-# Base URL for Multicloud without a trailing slash. (string value)
-server_url = http://{{.Values.config.msb.serviceName}}:{{.Values.config.msb.port}}/api/multicloud
-
-# Timeout for Multicloud Rest Call (string value)
-multicloud_rest_timeout = 30
-
-# Number of retry for Multicloud Rest Call (string value)
-multicloud_retries = 3
-
-# The version of Multicloud API. (string value)
-server_url_version = v0
+# (integer value)
+# Minimum value: 1
+#max_solver_counter = 1
[vim_controller]
+
#
# From conductor
#
# Extensions list to use (list value)
-extensions = multicloud
-
+#extensions = multicloud
diff --git a/kubernetes/oof/charts/oof-has/resources/config/healthcheck.json b/kubernetes/oof/charts/oof-has/resources/config/healthcheck.json
new file mode 100755
index 0000000000..833fa0f5d9
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/healthcheck.json
@@ -0,0 +1,18 @@
+{
+ "consistencyInfo": {
+ "type": "eventual"
+ },
+ "values": {
+ "id": "healthcheck",
+ "created": 1479482603641,
+ "message": "",
+ "name": "foo",
+ "recommend_max": 1,
+ "solution": "{\"healthcheck\": \" healthcheck\"}",
+ "status": "solved",
+ "template": "{\"healthcheck\": \"healthcheck\"}",
+ "timeout": 3600,
+ "translation": "{\"healthcheck\": \" healthcheck\"}",
+ "updated": 1484324150629
+ }
+}
diff --git a/kubernetes/oof/charts/oof-has/resources/config/onboard.json b/kubernetes/oof/charts/oof-has/resources/config/onboard.json
new file mode 100755
index 0000000000..2c3d69be8d
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/onboard.json
@@ -0,0 +1,6 @@
+{
+ "appname": "conductor",
+ "userId": "conductor",
+ "isAAF": "false",
+ "password": "c0nduct0r"
+}
diff --git a/kubernetes/oof/charts/oof-has/templates/job-healthcheck.yaml b/kubernetes/oof/charts/oof-has/templates/job-healthcheck.yaml
new file mode 100755
index 0000000000..6e38034c46
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/templates/job-healthcheck.yaml
@@ -0,0 +1,100 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-healthcheck
+ 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:
+ - image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-api
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-healthcheck
+ command:
+ - "/bin/sh"
+ - "-c"
+ - |
+ echo "INSERT HEALTHCHECK PLAN";
+ sleep 15;
+ resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null --write-out %{http_code} -X POST http://{{.Values.config.music.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.music.port}}/MUSIC/rest/v2/keyspaces/conductor/tables/plans/rows?id=healthcheck \
+ -H "Content-Type: application/json" \
+ -H "ns: conductor" \
+ -H "Authorization: Basic Y29uZHVjdG9yOmMwbmR1Y3Qwcg==" \
+ --data @healthcheck.json);
+ echo $resp;
+ sleep 2;
+ done;
+ workingDir: /has
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /has/healthcheck.json
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthcheck.json
+ resources:
+{{ toYaml .Values.resources | indent 10 }}
+ nodeSelector:
+ {{- if .Values.nodeSelector }}
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: healthcheck.json
+ path: healthcheck.json
+ restartPolicy: OnFailure
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/templates/job-onboard.yaml b/kubernetes/oof/charts/oof-has/templates/job-onboard.yaml
new file mode 100755
index 0000000000..2b24d4017d
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/templates/job-onboard.yaml
@@ -0,0 +1,108 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-onboard
+ 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:
+ - image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "music-tomcat"
+ - --container-name
+ - "music-cassandra"
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - "{{ .Release.Name }}-music-cassandra-job-config"
+ 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" . }}-music-db-readiness
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-onboard
+ command:
+ - "/bin/sh"
+ - "-c"
+ - |
+ curl -X POST http://{{.Values.config.music.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.music.port}}/MUSIC/rest/v2/admin/onboardAppWithMusic \
+ -H "Content-Type: application/json" \
+ -H "Authorization: Basic Y29uZHVjdG9yOmMwbmR1Y3Qwcg==" \
+ --data @onboard.json
+ workingDir: /has
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /has/onboard.json
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: onboard.json
+ resources:
+{{ toYaml .Values.resources | indent 10 }}
+ nodeSelector:
+ {{- if .Values.nodeSelector }}
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: onboard.json
+ path: onboard.json
+ restartPolicy: OnFailure
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/values.yaml b/kubernetes/oof/charts/oof-has/values.yaml
index fa6b4100d8..952aa830a9 100755
--- a/kubernetes/oof/charts/oof-has/values.yaml
+++ b/kubernetes/oof/charts/oof-has/values.yaml
@@ -1,4 +1,5 @@
# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+# Modifications Copyright © 2018 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -24,17 +25,44 @@ global:
commonConfigPrefix: onap-oof-has
image:
readiness: oomk8s/readiness-check:2.0.0
- optf_has: onap/optf-has:1.2.1
+ optf_has: onap/optf-has:1.2.3
filebeat: docker.elastic.co/beats/filebeat:5.5.0
pullPolicy: Always
nodePortPrefix: 302
dataRootDir: /dockerdata-nfs
config:
+ aaf:
+ serviceName: aaf-service
+ port: 8100
aai:
serviceName: aai
port: 8443
msb:
serviceName: msb-iag
port: 80
-
+ music:
+ serviceName: music-tomcat
+ port: 8080
+ sms:
+ serviceName: aaf-sms
+ port: 10443
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+ small:
+ limits:
+ memory: 2Gi
+ cpu: 1000m
+ requests:
+ memory: 1Gi
+ cpu: 500m
+ large:
+ limits:
+ memory: 4Gi
+ cpu: 2000m
+ requests:
+ memory: 2Gi
+ cpu: 1000m
+ unlimited: {}
diff --git a/kubernetes/oof/resources/config/osdf_config.yaml b/kubernetes/oof/resources/config/osdf_config.yaml
index d39a83222f..fea3d908cf 100755
--- a/kubernetes/oof/resources/config/osdf_config.yaml
+++ b/kubernetes/oof/resources/config/osdf_config.yaml
@@ -68,7 +68,7 @@ aaf_user_roles:
{{- end }}
# Secret Management Service from AAF
-aaf_sms_url: {{ .Values.config.aaf_sms_url }}
+aaf_sms_url: {{ .Values.config.aaf_sms_url }}.{{ include "common.namespace" . }}:{{ .Values.config.aaf_sms_port }}
aaf_sms_timeout: {{ .Values.config.aaf_sms_timeout }}
secret_domain: {{ .Values.config.secret_domain }}
aaf_ca_certs: {{ .Values.config.aaf_ca_certs }}
diff --git a/kubernetes/oof/templates/deployment.yaml b/kubernetes/oof/templates/deployment.yaml
index 07f1ff44a9..d4558b72dd 100644
--- a/kubernetes/oof/templates/deployment.yaml
+++ b/kubernetes/oof/templates/deployment.yaml
@@ -37,12 +37,6 @@ spec:
args:
- --container-name
- pdp
- - --container-name
- - aaf-service
- - --container-name
- - aaf-sms
- - --container-name
- - oof-has-api
env:
- name: NAMESPACE
valueFrom:
@@ -52,6 +46,24 @@ spec:
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}-readiness
+ - command:
+ - sh
+ - -c
+ - resp="FAILURE";
+ until [ $resp = "200" ]; do
+ resp=$(curl -s -o /dev/null -k --write-out %{http_code} https://aaf-sms.{{ include "common.namespace" . }}:10443/v1/sms/domain/osdf/secret);
+ echo $resp;
+ sleep 2;
+ done
+ 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" . }}-osdf-sms-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
diff --git a/kubernetes/oof/values.yaml b/kubernetes/oof/values.yaml
index da69c42b9e..1d926fa643 100644
--- a/kubernetes/oof/values.yaml
+++ b/kubernetes/oof/values.yaml
@@ -26,7 +26,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/optf-osdf:1.2.1
+image: onap/optf-osdf:1.2.3
pullPolicy: Always
# flag to enable debugging - application support required
@@ -36,7 +36,7 @@ debugEnabled: false
config:
msbgateway: msb-iag
msbPort: 80
- placementVersioningEnabled: False
+ placementVersioningEnabled: True
# Placement API latest version numbers to be set in HTTP header
placementMajorVersion: "1"
placementMinorVersion: "0"
@@ -57,7 +57,7 @@ config:
# versions to be set in HTTP header
conductorMinorVersion: 0
# Url and credentials for the Policy Platform
- policyPlatformUrl: http://pdp:8081/pdp/api/getConfig # Policy Dev platform URL
+ policyPlatformUrl: https://pdp:8081/pdp/api/getConfig # Policy Dev platform URL
policyPlatformEnv: TEST # Environment for policy platform
policyPlatformUsername: testpdp # Policy platform username.
policyPlatformPassword: alpha123 # Policy platform password.
@@ -92,7 +92,8 @@ config:
aaf_user_roles:
- '/api/oof/v1/placement:org.onap.osdf.access|*|read ALL'
# Secret Management Service from AAF
- aaf_sms_url: https://aaf-sms:10443
+ aaf_sms_url: https://aaf-sms
+ aaf_sms_port: 10443
aaf_sms_timeout: 30
secret_domain: osdf
aaf_ca_certs: /opt/app/ssl_cert/aaf_root_ca.cer
@@ -118,15 +119,15 @@ flavor: small
resources:
small:
limits:
- memory: 4Gi
- cpu: 2000m
+ memory: 2Gi
+ cpu: 1000m
requests:
memory: 1Gi
cpu: 500m
large:
limits:
- memory: 8Gi
- cpu: 4000m
+ memory: 4Gi
+ cpu: 2000m
requests:
memory: 2Gi
cpu: 1000m
diff --git a/kubernetes/policy/charts/brmsgw/values.yaml b/kubernetes/policy/charts/brmsgw/values.yaml
index b9ce28e86b..5109465837 100644
--- a/kubernetes/policy/charts/brmsgw/values.yaml
+++ b/kubernetes/policy/charts/brmsgw/values.yaml
@@ -26,7 +26,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.3.0
+image: onap/policy-pe:1.3.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf
index a67f32f368..24f6b8208c 100644
--- a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf
@@ -44,6 +44,7 @@ SQL_PASSWORD=policy_user
# AAF
+AAF=true
AAF_NAMESPACE=org.onap.policy
AAF_HOST=aaf-locate.{{.Release.Namespace}}
diff --git a/kubernetes/policy/charts/drools/values.yaml b/kubernetes/policy/charts/drools/values.yaml
index bacddde0b5..9dfefae61c 100644
--- a/kubernetes/policy/charts/drools/values.yaml
+++ b/kubernetes/policy/charts/drools/values.yaml
@@ -28,7 +28,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/policy-drools:1.3.0
+image: onap/policy-drools:1.3.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/policy/charts/pdp/values.yaml b/kubernetes/policy/charts/pdp/values.yaml
index 6bb6765169..5496123104 100644
--- a/kubernetes/policy/charts/pdp/values.yaml
+++ b/kubernetes/policy/charts/pdp/values.yaml
@@ -28,7 +28,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.3.0
+image: onap/policy-pe:1.3.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/policy/charts/policy-apex-pdp/values.yaml b/kubernetes/policy/charts/policy-apex-pdp/values.yaml
index 2a5b04a344..96803cfd70 100644
--- a/kubernetes/policy/charts/policy-apex-pdp/values.yaml
+++ b/kubernetes/policy/charts/policy-apex-pdp/values.yaml
@@ -28,7 +28,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/policy-apex-pdp:2.0.0
+image: onap/policy-apex-pdp:2.0.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/policy/charts/policy-distribution/values.yaml b/kubernetes/policy/charts/policy-distribution/values.yaml
index 835a7456ce..cad79df99e 100644
--- a/kubernetes/policy/charts/policy-distribution/values.yaml
+++ b/kubernetes/policy/charts/policy-distribution/values.yaml
@@ -27,7 +27,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/policy-distribution:2.0.0
+image: onap/policy-distribution:2.0.1
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/policy/resources/config/pe/console.conf b/kubernetes/policy/resources/config/pe/console.conf
index deb213e4b6..1cd9290379 100644
--- a/kubernetes/policy/resources/config/pe/console.conf
+++ b/kubernetes/policy/resources/config/pe/console.conf
@@ -139,8 +139,8 @@ ONAP_REDIRECT_URL=https://portal-app.{{.Release.Namespace}}:30225/ONAPPORTAL/log
ONAP_REST_URL=https://portal-app:8443/ONAPPORTAL/auxapi
ONAP_UEB_URL_LIST=
ONAP_PORTAL_INBOX_NAME=
-ONAP_UEB_APP_KEY=
-ONAP_UEB_APP_SECRET=
+ONAP_UEB_APP_KEY=ueb_key_5
+ONAP_UEB_APP_SECRET=ueb_key_5
ONAP_UEB_APP_MAILBOX_NAME=
APP_DISPLAY_NAME=ONAP Policy
ONAP_SHARED_CONTEXT_REST_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/context
diff --git a/kubernetes/policy/values.yaml b/kubernetes/policy/values.yaml
index 2165b18170..8d72d1922b 100644
--- a/kubernetes/policy/values.yaml
+++ b/kubernetes/policy/values.yaml
@@ -41,7 +41,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.3.0
+image: onap/policy-pe:1.3.1
pullPolicy: Always
subChartsOnly:
diff --git a/kubernetes/robot/demo-k8s.sh b/kubernetes/robot/demo-k8s.sh
index c4124c2ad4..79d545b2be 100755
--- a/kubernetes/robot/demo-k8s.sh
+++ b/kubernetes/robot/demo-k8s.sh
@@ -45,7 +45,7 @@ function usage
echo " demo.sh <namespace> deleteVNF <module_name from instantiateVFW>"
echo " - Delete the module created by instantiateVFW"
echo " "
- echo " demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service>"
+ echo " demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
echo " - Run heatbridge against the stack for the given service instance and service"
}
@@ -149,8 +149,8 @@ do
heatbridge)
TAG="heatbridge"
shift
- if [ $# -ne 3 ];then
- echo "Usage: demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service>"
+ if [ $# -ne 4 ];then
+ echo "Usage: demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
exit
fi
VARIABLES="$VARIABLES -v HB_STACK:$1"
@@ -159,6 +159,12 @@ do
shift
VARIABLES="$VARIABLES -v HB_SERVICE:$1"
shift
+ VARIABLES="$VARIABLES -v HB_IPV4_OAM_ADDRESS:$1"
+ shift
+ ;;
+ cds)
+ TAG="cds"
+ shift
;;
*)
usage
diff --git a/kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml
index 294e1d21f8..fc6d216d5b 100755
--- a/kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml
+++ b/kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml
@@ -16,6 +16,8 @@ aai:
dme2:
timeout: '30000'
endpoint: https://aai.{{ include "common.namespace" . }}:8443
+ workflowAaiDistributionDelay: PT30S
+ pnfEntryNotificationTimeout: P14D
camunda:
bpm:
admin-user:
@@ -27,6 +29,16 @@ camunda:
core-pool-size: 3
entitymanager:
packagesToScan: com
+pnf:
+ dmaap:
+ host: message-router
+ port: 3904
+ protocol: http
+ uriPathPrefix: events
+ topicName: pnfReady
+ consumerGroup: consumerGroup
+ consumerId: consumerId
+ topicListenerDelayInSeconds: 5
mso:
msoKey: 07a7159d3bf51a0e53be7a8f89699be7
correlation:
@@ -316,4 +328,4 @@ spring:
-
username: mso_admin
password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
- role: ACTUATOR \ No newline at end of file
+ role: ACTUATOR
diff --git a/kubernetes/uui/charts/uui-server/values.yaml b/kubernetes/uui/charts/uui-server/values.yaml
index 268c6f3e41..bcf6897cf1 100644
--- a/kubernetes/uui/charts/uui-server/values.yaml
+++ b/kubernetes/uui/charts/uui-server/values.yaml
@@ -25,7 +25,7 @@ flavor: small
# application image
repository: nexus3.onap.org:10001
-image: onap/usecase-ui/usecase-ui-server:1.1.1
+image: onap/usecase-ui-server:1.2.0
pullPolicy: Always
# application configuration