Merge "Add OOM update so-bpmn-infra's Override.yaml file"
authorAlexis de Talhouët <adetalhouet89@gmail.com>
Mon, 2 Sep 2019 18:53:05 +0000 (18:53 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 2 Sep 2019 18:53:05 +0000 (18:53 +0000)
541 files changed:
.gitmodules
INFO.yaml
docs/example-integration-override-v3.yaml [new file with mode: 0644]
docs/oom_quickstart_guide.rst
docs/oom_setup_kubernetes_rancher.rst
docs/release-notes.rst
kubernetes/aaf/Chart.yaml
kubernetes/aaf/charts/aaf-cass/Chart.yaml
kubernetes/aaf/charts/aaf-cass/templates/deployment.yaml
kubernetes/aaf/charts/aaf-cm/Chart.yaml
kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml
kubernetes/aaf/charts/aaf-fs/Chart.yaml
kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml
kubernetes/aaf/charts/aaf-gui/Chart.yaml
kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml
kubernetes/aaf/charts/aaf-hello/Chart.yaml
kubernetes/aaf/charts/aaf-hello/templates/NOTES.txt
kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml [new file with mode: 0644]
kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml [new file with mode: 0644]
kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml
kubernetes/aaf/charts/aaf-hello/templates/service.yaml
kubernetes/aaf/charts/aaf-hello/values.yaml
kubernetes/aaf/charts/aaf-locate/Chart.yaml
kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml
kubernetes/aaf/charts/aaf-oauth/Chart.yaml
kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml
kubernetes/aaf/charts/aaf-service/Chart.yaml
kubernetes/aaf/charts/aaf-service/templates/deployment.yaml
kubernetes/aaf/charts/aaf-sms/Chart.yaml
kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/Chart.yaml
kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/Chart.yaml
kubernetes/aaf/charts/aaf-sshsm/Chart.yaml
kubernetes/aaf/charts/aaf-sshsm/charts/aaf-sshsm-abrmd/Chart.yaml
kubernetes/aaf/charts/aaf-sshsm/charts/aaf-sshsm-distcenter/Chart.yaml
kubernetes/aaf/charts/aaf-sshsm/charts/aaf-sshsm-testca/Chart.yaml
kubernetes/aaf/charts/aaf-sshsm/requirements.yaml
kubernetes/aaf/requirements.yaml
kubernetes/aaf/values.yaml
kubernetes/aai
kubernetes/appc/Chart.yaml
kubernetes/appc/charts/appc-ansible-server/Chart.yaml
kubernetes/appc/charts/appc-ansible-server/requirements.yaml
kubernetes/appc/charts/appc-ansible-server/templates/pv.yaml
kubernetes/appc/charts/appc-ansible-server/templates/statefulset.yaml
kubernetes/appc/charts/appc-ansible-server/values.yaml
kubernetes/appc/charts/appc-cdt/Chart.yaml
kubernetes/appc/charts/appc-cdt/requirements.yaml
kubernetes/appc/requirements.yaml
kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh [deleted file]
kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/cadi.properties
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh [deleted file]
kubernetes/appc/templates/service.yaml
kubernetes/appc/templates/statefulset.yaml
kubernetes/appc/values.yaml
kubernetes/cds/Chart.yaml
kubernetes/cds/charts/cds-blueprints-processor/Chart.yaml
kubernetes/cds/charts/cds-blueprints-processor/requirements.yaml
kubernetes/cds/charts/cds-blueprints-processor/resources/config/ONAP_RootCA.cer [new file with mode: 0755]
kubernetes/cds/charts/cds-blueprints-processor/resources/config/application.properties
kubernetes/cds/charts/cds-blueprints-processor/templates/deployment.yaml
kubernetes/cds/charts/cds-blueprints-processor/values.yaml
kubernetes/cds/charts/cds-command-executor/Chart.yaml
kubernetes/cds/charts/cds-command-executor/requirements.yaml
kubernetes/cds/charts/cds-command-executor/values.yaml
kubernetes/cds/charts/cds-controller-blueprints/Chart.yaml
kubernetes/cds/charts/cds-controller-blueprints/requirements.yaml
kubernetes/cds/charts/cds-controller-blueprints/resources/config/application.properties
kubernetes/cds/charts/cds-controller-blueprints/values.yaml
kubernetes/cds/charts/cds-sdc-listener/Chart.yaml
kubernetes/cds/charts/cds-sdc-listener/requirements.yaml
kubernetes/cds/charts/cds-sdc-listener/values.yaml
kubernetes/cds/charts/cds-ui/Chart.yaml
kubernetes/cds/charts/cds-ui/requirements.yaml
kubernetes/cds/charts/cds-ui/templates/deployment.yaml
kubernetes/cds/charts/cds-ui/values.yaml
kubernetes/cds/requirements.yaml
kubernetes/clamp/Chart.yaml
kubernetes/clamp/charts/clamp-dash-es/Chart.yaml
kubernetes/clamp/charts/clamp-dash-es/requirements.yaml
kubernetes/clamp/charts/clamp-dash-es/values.yaml
kubernetes/clamp/charts/clamp-dash-kibana/Chart.yaml
kubernetes/clamp/charts/clamp-dash-kibana/requirements.yaml
kubernetes/clamp/charts/clamp-dash-kibana/resources/config/kibana.yml
kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
kubernetes/clamp/charts/clamp-dash-logstash/Chart.yaml
kubernetes/clamp/charts/clamp-dash-logstash/requirements.yaml
kubernetes/clamp/charts/clamp-dash-logstash/resources/config/pipeline.conf
kubernetes/clamp/charts/clamp-dash-logstash/templates/deployment.yaml
kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
kubernetes/clamp/charts/mariadb/Chart.yaml
kubernetes/clamp/charts/mariadb/templates/service.yaml
kubernetes/clamp/requirements.yaml
kubernetes/clamp/values.yaml
kubernetes/cli/Chart.yaml
kubernetes/cli/requirements.yaml
kubernetes/common/cassandra/Chart.yaml
kubernetes/common/cassandra/requirements.yaml
kubernetes/common/common/Chart.yaml
kubernetes/common/common/templates/_ingress.tpl [new file with mode: 0644]
kubernetes/common/dgbuilder/Chart.yaml
kubernetes/common/dgbuilder/requirements.yaml
kubernetes/common/dgbuilder/values.yaml
kubernetes/common/etcd/Chart.yaml
kubernetes/common/etcd/requirements.yaml
kubernetes/common/mariadb-galera/Chart.yaml
kubernetes/common/mariadb-galera/requirements.yaml
kubernetes/common/mongo/Chart.yaml
kubernetes/common/mongo/requirements.yaml
kubernetes/common/music/Chart.yaml
kubernetes/common/music/charts/music-cassandra-job/Chart.yaml
kubernetes/common/music/charts/music-cassandra/Chart.yaml
kubernetes/common/music/charts/music-cassandra/requirements.yaml
kubernetes/common/music/charts/music-tomcat/Chart.yaml
kubernetes/common/music/charts/music-tomcat/requirements.yaml
kubernetes/common/music/requirements.yaml
kubernetes/common/mysql/Chart.yaml
kubernetes/common/mysql/requirements.yaml
kubernetes/common/network-name-gen/Chart.yaml
kubernetes/common/network-name-gen/requirements.yaml
kubernetes/common/nfs-provisioner/Chart.yaml
kubernetes/common/nfs-provisioner/requirements.yaml
kubernetes/common/postgres/Chart.yaml
kubernetes/common/postgres/charts/pgpool/Chart.yaml
kubernetes/common/postgres/charts/pgpool/requirements.yaml
kubernetes/common/postgres/requirements.yaml
kubernetes/consul/Chart.yaml
kubernetes/consul/charts/consul-server/Chart.yaml
kubernetes/consul/charts/consul-server/requirements.yaml
kubernetes/consul/requirements.yaml
kubernetes/contrib/Chart.yaml
kubernetes/contrib/charts/awx/Chart.yaml [new file with mode: 0755]
kubernetes/contrib/charts/awx/Makefile [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx-postgres/Chart.yaml [moved from kubernetes/robot/Chart.yaml with 82% similarity, mode: 0755]
kubernetes/contrib/charts/awx/charts/awx-postgres/templates/NOTES.txt [moved from kubernetes/robot/templates/NOTES.txt with 64% similarity, mode: 0755]
kubernetes/contrib/charts/awx/charts/awx-postgres/templates/deployment.yaml [moved from kubernetes/robot/templates/deployment.yaml with 53% similarity, mode: 0755]
kubernetes/contrib/charts/awx/charts/awx-postgres/templates/pv.yaml [moved from kubernetes/robot/templates/pv.yaml with 93% similarity, mode: 0755]
kubernetes/contrib/charts/awx/charts/awx-postgres/templates/pvc.yaml [moved from kubernetes/robot/templates/pvc.yaml with 91% similarity, mode: 0755]
kubernetes/contrib/charts/awx/charts/awx-postgres/templates/service.yaml [moved from kubernetes/robot/templates/service.yaml with 85% similarity, mode: 0755]
kubernetes/contrib/charts/awx/charts/awx-postgres/values.yaml [new file with mode: 0755]
kubernetes/contrib/charts/awx/charts/awx/Chart.yaml [new file with mode: 0755]
kubernetes/contrib/charts/awx/charts/awx/resources/config/credentials.py [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx/resources/config/environment.sh [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx/templates/configmap.yaml [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx/templates/job.yaml [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx/templates/secret.yaml [moved from kubernetes/robot/templates/configmap.yaml with 61% similarity]
kubernetes/contrib/charts/awx/charts/awx/templates/service.yaml [new file with mode: 0755]
kubernetes/contrib/charts/awx/charts/awx/templates/serviceaccout.yaml [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx/templates/statefulset.yaml [new file with mode: 0644]
kubernetes/contrib/charts/awx/charts/awx/values.yaml [new file with mode: 0755]
kubernetes/contrib/charts/awx/requirements.yaml [moved from kubernetes/robot/requirements.yaml with 73% similarity, mode: 0755]
kubernetes/contrib/charts/awx/values.yaml [new file with mode: 0755]
kubernetes/contrib/charts/netbox/Chart.yaml
kubernetes/contrib/charts/netbox/charts/netbox-app/Chart.yaml
kubernetes/contrib/charts/netbox/charts/netbox-nginx/Chart.yaml
kubernetes/contrib/charts/netbox/charts/netbox-postgres/Chart.yaml
kubernetes/contrib/charts/netbox/requirements.yaml
kubernetes/contrib/requirements.yaml
kubernetes/contrib/values.yaml
kubernetes/dcaegen2/Chart.yaml
kubernetes/dcaegen2/Makefile
kubernetes/dcaegen2/charts/dcae-bootstrap/Chart.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/requirements.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/resources/certs/cacert.pem [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/dmaap-plugin.json [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/k8s-plugin.json
kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-dashboard-inputs.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/templates/configmap.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
kubernetes/dcaegen2/charts/dcae-cloudify-manager/Chart.yaml
kubernetes/dcaegen2/charts/dcae-cloudify-manager/requirements.yaml
kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/Chart.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/requirements.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/templates/service.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml
kubernetes/dcaegen2/charts/dcae-dashboard/.helmignore [moved from kubernetes/robot/.helmignore with 97% similarity]
kubernetes/dcaegen2/charts/dcae-dashboard/Chart.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-dashboard/requirements.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-dashboard/resources/log/filebeat.yml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-dashboard/templates/configmap.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-dashboard/templates/deployment.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-dashboard/templates/service.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-dashboard/values.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-deployment-handler/Chart.yaml
kubernetes/dcaegen2/charts/dcae-deployment-handler/requirements.yaml
kubernetes/dcaegen2/charts/dcae-deployment-handler/resources/config/config.json
kubernetes/dcaegen2/charts/dcae-deployment-handler/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-deployment-handler/values.yaml
kubernetes/dcaegen2/charts/dcae-healthcheck/Chart.yaml
kubernetes/dcaegen2/charts/dcae-healthcheck/requirements.yaml
kubernetes/dcaegen2/charts/dcae-healthcheck/values.yaml
kubernetes/dcaegen2/charts/dcae-policy-handler/Chart.yaml
kubernetes/dcaegen2/charts/dcae-policy-handler/requirements.yaml
kubernetes/dcaegen2/charts/dcae-redis/Chart.yaml
kubernetes/dcaegen2/charts/dcae-redis/requirements.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/Chart.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/Chart.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/requirements.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/resources/config/config.json
kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/values.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/requirements.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/resources/config/config.json
kubernetes/dcaegen2/charts/dcae-servicechange-handler/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-servicechange-handler/values.yaml
kubernetes/dcaegen2/requirements.yaml
kubernetes/dmaap/Chart.yaml
kubernetes/dmaap/components/dmaap-bc/Chart.yaml
kubernetes/dmaap/components/dmaap-bc/requirements.yaml
kubernetes/dmaap/components/dmaap-dr-node/Chart.yaml
kubernetes/dmaap/components/dmaap-dr-node/requirements.yaml
kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh [deleted file]
kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json [deleted file]
kubernetes/dmaap/components/dmaap-dr-node/resources/config/log/filebeat/filebeat.yml
kubernetes/dmaap/components/dmaap-dr-node/resources/config/logback.xml
kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
kubernetes/dmaap/components/dmaap-dr-node/templates/configmap.yaml
kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
kubernetes/dmaap/components/dmaap-dr-node/values.yaml
kubernetes/dmaap/components/dmaap-dr-prov/Chart.yaml
kubernetes/dmaap/components/dmaap-dr-prov/requirements.yaml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/log/filebeat/filebeat.yml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/logback.xml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
kubernetes/dmaap/components/dmaap-dr-prov/templates/configmap.yaml
kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
kubernetes/dmaap/components/dmaap-dr-prov/templates/service.yaml
kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
kubernetes/dmaap/components/message-router/Chart.yaml
kubernetes/dmaap/components/message-router/charts/message-router-kafka/Chart.yaml
kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/cadi.properties [new file with mode: 0644]
kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/log4j.properties [new file with mode: 0644]
kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/server.properties [new file with mode: 0644]
kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/configmap.yaml [new file with mode: 0644]
kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/statefulset.yaml
kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/Chart.yaml
kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/Chart.yaml
kubernetes/dmaap/components/message-router/requirements.yaml
kubernetes/dmaap/components/message-router/resources/config/dmaap/MsgRtrApi.properties
kubernetes/dmaap/components/message-router/resources/config/dmaap/cadi.properties
kubernetes/dmaap/components/message-router/resources/config/dmaap/logback.xml [new file with mode: 0644]
kubernetes/dmaap/components/message-router/templates/configmap.yaml
kubernetes/dmaap/components/message-router/templates/statefulset.yaml
kubernetes/dmaap/components/message-router/values.yaml
kubernetes/dmaap/requirements.yaml
kubernetes/dmaap/resources/config/log/filebeat/filebeat.yml
kubernetes/dmaap/values.yaml
kubernetes/esr/Chart.yaml
kubernetes/esr/charts/esr-gui/Chart.yaml
kubernetes/esr/charts/esr-server/Chart.yaml
kubernetes/esr/charts/esr-server/requirements.yaml
kubernetes/esr/requirements.yaml
kubernetes/helm/starters/onap-app/Chart.yaml
kubernetes/helm/starters/onap-app/requirements.yaml
kubernetes/log/Chart.yaml
kubernetes/log/charts/log-elasticsearch/Chart.yaml
kubernetes/log/charts/log-elasticsearch/requirements.yaml
kubernetes/log/charts/log-kibana/Chart.yaml
kubernetes/log/charts/log-kibana/requirements.yaml
kubernetes/log/charts/log-kibana/resources/config/README.txt [new file with mode: 0644]
kubernetes/log/charts/log-kibana/resources/config/kibana-onboarding.json [new file with mode: 0644]
kubernetes/log/charts/log-kibana/templates/deployment.yaml
kubernetes/log/charts/log-kibana/values.yaml
kubernetes/log/charts/log-logstash/Chart.yaml
kubernetes/log/charts/log-logstash/requirements.yaml
kubernetes/log/requirements.yaml
kubernetes/modeling/Chart.yaml
kubernetes/modeling/charts/modeling-genericparser/Chart.yaml
kubernetes/modeling/requirements.yaml
kubernetes/msb/Chart.yaml
kubernetes/msb/charts/kube2msb/Chart.yaml
kubernetes/msb/charts/kube2msb/requirements.yaml
kubernetes/msb/charts/msb-consul/Chart.yaml
kubernetes/msb/charts/msb-consul/requirements.yaml
kubernetes/msb/charts/msb-discovery/Chart.yaml
kubernetes/msb/charts/msb-discovery/requirements.yaml
kubernetes/msb/charts/msb-eag/Chart.yaml
kubernetes/msb/charts/msb-eag/requirements.yaml
kubernetes/msb/charts/msb-iag/Chart.yaml
kubernetes/msb/charts/msb-iag/requirements.yaml
kubernetes/msb/requirements.yaml
kubernetes/multicloud/Chart.yaml
kubernetes/multicloud/charts/multicloud-azure/Chart.yaml
kubernetes/multicloud/charts/multicloud-fcaps/Chart.yaml
kubernetes/multicloud/charts/multicloud-k8s/Chart.yaml
kubernetes/multicloud/charts/multicloud-k8s/requirements.yaml
kubernetes/multicloud/charts/multicloud-lenovo/Chart.yaml
kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml
kubernetes/multicloud/charts/multicloud-pike/Chart.yaml
kubernetes/multicloud/charts/multicloud-prometheus/Chart.yaml
kubernetes/multicloud/charts/multicloud-prometheus/charts/prometheus-alertmanager/Chart.yaml
kubernetes/multicloud/charts/multicloud-prometheus/charts/prometheus-grafana/Chart.yaml
kubernetes/multicloud/charts/multicloud-vio/Chart.yaml
kubernetes/multicloud/charts/multicloud-windriver/Chart.yaml
kubernetes/multicloud/requirements.yaml
kubernetes/nbi/Chart.yaml
kubernetes/nbi/charts/mariadb/Chart.yaml
kubernetes/nbi/charts/mariadb/requirements.yaml
kubernetes/nbi/requirements.yaml
kubernetes/nbi/values.yaml
kubernetes/onap/Chart.yaml
kubernetes/onap/requirements.yaml [changed mode: 0644->0755]
kubernetes/onap/resources/overrides/environment.yaml [new file with mode: 0644]
kubernetes/onap/resources/overrides/onap-all-ingress-nginx.yaml [new file with mode: 0644]
kubernetes/onap/resources/overrides/onap-all.yaml
kubernetes/onap/values.yaml [changed mode: 0644->0755]
kubernetes/oof/Chart.yaml
kubernetes/oof/charts/oof-cmso/Chart.yaml
kubernetes/oof/charts/oof-cmso/charts/oof-cmso-optimizer/Chart.yaml
kubernetes/oof/charts/oof-cmso/charts/oof-cmso-service/Chart.yaml
kubernetes/oof/charts/oof-cmso/charts/oof-cmso-ticketmgt/Chart.yaml
kubernetes/oof/charts/oof-cmso/charts/oof-cmso-topology/Chart.yaml
kubernetes/oof/charts/oof-cmso/requirements.yaml
kubernetes/oof/charts/oof-has/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-api/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-controller/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-data/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-reservation/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-solver/Chart.yaml
kubernetes/oof/charts/oof-has/requirements.yaml
kubernetes/oof/requirements.yaml
kubernetes/pnda/Chart.yaml
kubernetes/pnda/charts/dcae-pnda-bootstrap/Chart.yaml
kubernetes/pnda/charts/dcae-pnda-bootstrap/requirements.yaml
kubernetes/pnda/charts/dcae-pnda-mirror/Chart.yaml
kubernetes/pnda/charts/dcae-pnda-mirror/requirements.yaml
kubernetes/pnda/requirements.yaml
kubernetes/policy/Chart.yaml
kubernetes/policy/charts/brmsgw/Chart.yaml
kubernetes/policy/charts/brmsgw/requirements.yaml
kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
kubernetes/policy/charts/brmsgw/values.yaml
kubernetes/policy/charts/drools/Chart.yaml
kubernetes/policy/charts/drools/charts/nexus/Chart.yaml
kubernetes/policy/charts/drools/charts/nexus/requirements.yaml
kubernetes/policy/charts/drools/charts/nexus/values.yaml
kubernetes/policy/charts/drools/requirements.yaml
kubernetes/policy/charts/drools/values.yaml
kubernetes/policy/charts/mariadb/Chart.yaml
kubernetes/policy/charts/mariadb/requirements.yaml
kubernetes/policy/charts/mariadb/values.yaml
kubernetes/policy/charts/pdp/Chart.yaml
kubernetes/policy/charts/pdp/requirements.yaml
kubernetes/policy/charts/pdp/values.yaml
kubernetes/policy/charts/policy-apex-pdp/Chart.yaml
kubernetes/policy/charts/policy-apex-pdp/requirements.yaml
kubernetes/policy/charts/policy-apex-pdp/resources/config/OnapPfConfig.json
kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties [deleted file]
kubernetes/policy/charts/policy-apex-pdp/templates/statefulset.yaml
kubernetes/policy/charts/policy-apex-pdp/values.yaml
kubernetes/policy/charts/policy-api/Chart.yaml
kubernetes/policy/charts/policy-api/requirements.yaml
kubernetes/policy/charts/policy-api/values.yaml
kubernetes/policy/charts/policy-common/Chart.yaml
kubernetes/policy/charts/policy-common/requirements.yaml
kubernetes/policy/charts/policy-distribution/Chart.yaml
kubernetes/policy/charts/policy-distribution/requirements.yaml
kubernetes/policy/charts/policy-distribution/values.yaml
kubernetes/policy/charts/policy-pap/Chart.yaml
kubernetes/policy/charts/policy-pap/requirements.yaml
kubernetes/policy/charts/policy-pap/resources/config/config.json
kubernetes/policy/charts/policy-pap/resources/config/topic.properties [deleted file]
kubernetes/policy/charts/policy-pap/templates/deployment.yaml
kubernetes/policy/charts/policy-pap/values.yaml
kubernetes/policy/charts/policy-xacml-pdp/Chart.yaml
kubernetes/policy/charts/policy-xacml-pdp/requirements.yaml
kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json
kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties [deleted file]
kubernetes/policy/charts/policy-xacml-pdp/templates/deployment.yaml
kubernetes/policy/charts/policy-xacml-pdp/values.yaml
kubernetes/policy/requirements.yaml
kubernetes/policy/values.yaml
kubernetes/pomba/Chart.yaml
kubernetes/pomba/charts/pomba-aaictxbuilder/Chart.yaml
kubernetes/pomba/charts/pomba-aaictxbuilder/requirements.yaml
kubernetes/pomba/charts/pomba-contextaggregator/Chart.yaml
kubernetes/pomba/charts/pomba-contextaggregator/requirements.yaml
kubernetes/pomba/charts/pomba-data-router/Chart.yaml
kubernetes/pomba/charts/pomba-elasticsearch/Chart.yaml
kubernetes/pomba/charts/pomba-elasticsearch/requirements.yaml
kubernetes/pomba/charts/pomba-kibana/Chart.yaml
kubernetes/pomba/charts/pomba-kibana/requirements.yaml
kubernetes/pomba/charts/pomba-networkdiscovery/Chart.yaml
kubernetes/pomba/charts/pomba-networkdiscovery/requirements.yaml
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml
kubernetes/pomba/charts/pomba-sdcctxbuilder/Chart.yaml
kubernetes/pomba/charts/pomba-sdcctxbuilder/requirements.yaml
kubernetes/pomba/charts/pomba-sdncctxbuilder/Chart.yaml
kubernetes/pomba/charts/pomba-sdncctxbuilder/requirements.yaml
kubernetes/pomba/charts/pomba-search-data/Chart.yaml
kubernetes/pomba/charts/pomba-servicedecomposition/Chart.yaml
kubernetes/pomba/charts/pomba-servicedecomposition/requirements.yaml
kubernetes/pomba/charts/pomba-validation-service/Chart.yaml
kubernetes/pomba/charts/pomba-validation-service/requirements.yaml
kubernetes/pomba/requirements.yaml
kubernetes/portal/Chart.yaml
kubernetes/portal/charts/portal-app/Chart.yaml
kubernetes/portal/charts/portal-cassandra/Chart.yaml
kubernetes/portal/charts/portal-mariadb/Chart.yaml
kubernetes/portal/charts/portal-mariadb/templates/service.yaml
kubernetes/portal/charts/portal-sdk/Chart.yaml
kubernetes/portal/charts/portal-widget/Chart.yaml
kubernetes/portal/charts/portal-zookeeper/Chart.yaml
kubernetes/portal/charts/portal-zookeeper/templates/service.yaml
kubernetes/portal/requirements.yaml
kubernetes/readiness/docker/init/job_complete.py
kubernetes/readiness/docker/init/ready.py
kubernetes/robot [new submodule]
kubernetes/robot/demo-k8s.sh [deleted file]
kubernetes/robot/ete-k8s.sh [deleted file]
kubernetes/robot/eteHelm-k8s.sh [deleted file]
kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py [deleted file]
kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py [deleted file]
kubernetes/robot/resources/config/eteshare/config/vm_properties.py [deleted file]
kubernetes/robot/values.yaml [deleted file]
kubernetes/sdc/Chart.yaml
kubernetes/sdc/charts/sdc-be/Chart.yaml
kubernetes/sdc/charts/sdc-be/values.yaml
kubernetes/sdc/charts/sdc-cs/Chart.yaml
kubernetes/sdc/charts/sdc-cs/values.yaml
kubernetes/sdc/charts/sdc-dcae-be/Chart.yaml
kubernetes/sdc/charts/sdc-dcae-be/values.yaml
kubernetes/sdc/charts/sdc-dcae-dt/Chart.yaml
kubernetes/sdc/charts/sdc-dcae-dt/values.yaml
kubernetes/sdc/charts/sdc-dcae-fe/Chart.yaml
kubernetes/sdc/charts/sdc-dcae-fe/values.yaml
kubernetes/sdc/charts/sdc-dcae-tosca-lab/Chart.yaml
kubernetes/sdc/charts/sdc-dcae-tosca-lab/values.yaml
kubernetes/sdc/charts/sdc-es/Chart.yaml
kubernetes/sdc/charts/sdc-es/values.yaml
kubernetes/sdc/charts/sdc-fe/Chart.yaml
kubernetes/sdc/charts/sdc-fe/values.yaml
kubernetes/sdc/charts/sdc-kb/Chart.yaml
kubernetes/sdc/charts/sdc-kb/values.yaml
kubernetes/sdc/charts/sdc-onboarding-be/Chart.yaml
kubernetes/sdc/charts/sdc-onboarding-be/values.yaml
kubernetes/sdc/charts/sdc-wfd-be/Chart.yaml
kubernetes/sdc/charts/sdc-wfd-fe/Chart.yaml
kubernetes/sdc/charts/sdc-wfd-fe/templates/ingress.yaml
kubernetes/sdc/charts/sdc-wfd-fe/values.yaml
kubernetes/sdc/requirements.yaml
kubernetes/sdc/resources/config/environments/AUTO.json
kubernetes/sdnc/Chart.yaml
kubernetes/sdnc/charts/dmaap-listener/Chart.yaml
kubernetes/sdnc/charts/dmaap-listener/requirements.yaml
kubernetes/sdnc/charts/dmaap-listener/values.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/Chart.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/requirements.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
kubernetes/sdnc/charts/sdnc-portal/Chart.yaml
kubernetes/sdnc/charts/sdnc-portal/requirements.yaml
kubernetes/sdnc/charts/sdnc-portal/values.yaml
kubernetes/sdnc/charts/ueb-listener/Chart.yaml
kubernetes/sdnc/charts/ueb-listener/requirements.yaml
kubernetes/sdnc/charts/ueb-listener/values.yaml
kubernetes/sdnc/requirements.yaml
kubernetes/sdnc/resources/config/bin/installSdncDb.sh
kubernetes/sdnc/resources/config/bin/startODL.sh
kubernetes/sdnc/resources/config/conf/akka.conf [new file with mode: 0644]
kubernetes/sdnc/resources/config/conf/org.opendaylight.controller.cluster.datastore.cfg [new file with mode: 0644]
kubernetes/sdnc/resources/config/conf/setenv [new file with mode: 0644]
kubernetes/sdnc/resources/config/overrides/sdnc-versions.yaml [new file with mode: 0644]
kubernetes/sdnc/sdnc-prom/Chart.yaml
kubernetes/sdnc/sdnc-prom/requirements.yaml
kubernetes/sdnc/templates/job.yaml [new file with mode: 0755]
kubernetes/sdnc/templates/service.yaml
kubernetes/sdnc/templates/statefulset.yaml
kubernetes/sdnc/values.yaml
kubernetes/sniro-emulator/Chart.yaml
kubernetes/sniro-emulator/requirements.yaml
kubernetes/so/Chart.yaml
kubernetes/so/charts/so-bpmn-infra/Chart.yaml
kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml
kubernetes/so/charts/so-bpmn-infra/values.yaml
kubernetes/so/charts/so-catalog-db-adapter/Chart.yaml
kubernetes/so/charts/so-catalog-db-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-catalog-db-adapter/values.yaml
kubernetes/so/charts/so-db-secrets/Chart.yaml
kubernetes/so/charts/so-mariadb/Chart.yaml
kubernetes/so/charts/so-monitoring/Chart.yaml
kubernetes/so/charts/so-monitoring/resources/config/overrides/override.yaml
kubernetes/so/charts/so-monitoring/values.yaml
kubernetes/so/charts/so-openstack-adapter/Chart.yaml
kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-openstack-adapter/values.yaml
kubernetes/so/charts/so-request-db-adapter/Chart.yaml
kubernetes/so/charts/so-request-db-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-request-db-adapter/values.yaml
kubernetes/so/charts/so-sdc-controller/Chart.yaml
kubernetes/so/charts/so-sdc-controller/resources/config/overrides/override.yaml
kubernetes/so/charts/so-sdc-controller/values.yaml
kubernetes/so/charts/so-sdnc-adapter/Chart.yaml
kubernetes/so/charts/so-sdnc-adapter/values.yaml
kubernetes/so/charts/so-vfc-adapter/Chart.yaml
kubernetes/so/charts/so-vfc-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-vfc-adapter/values.yaml
kubernetes/so/charts/so-vnfm-adapter/Chart.yaml
kubernetes/so/charts/so-vnfm-adapter/values.yaml
kubernetes/so/requirements.yaml
kubernetes/so/resources/config/overrides/override.yaml
kubernetes/so/values.yaml
kubernetes/uui/Chart.yaml
kubernetes/uui/charts/uui-server/Chart.yaml
kubernetes/uui/requirements.yaml
kubernetes/vfc/Chart.yaml
kubernetes/vfc/charts/vfc-catalog/Chart.yaml
kubernetes/vfc/charts/vfc-ems-driver/Chart.yaml
kubernetes/vfc/charts/vfc-generic-vnfm-driver/Chart.yaml
kubernetes/vfc/charts/vfc-huawei-vnfm-driver/Chart.yaml
kubernetes/vfc/charts/vfc-juju-vnfm-driver/Chart.yaml
kubernetes/vfc/charts/vfc-multivim-proxy/Chart.yaml
kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/Chart.yaml
kubernetes/vfc/charts/vfc-nslcm/Chart.yaml
kubernetes/vfc/charts/vfc-redis/Chart.yaml
kubernetes/vfc/charts/vfc-resmgr/Chart.yaml
kubernetes/vfc/charts/vfc-vnflcm/Chart.yaml
kubernetes/vfc/charts/vfc-vnfmgr/Chart.yaml
kubernetes/vfc/charts/vfc-vnfres/Chart.yaml
kubernetes/vfc/charts/vfc-workflow-engine/Chart.yaml
kubernetes/vfc/charts/vfc-workflow/Chart.yaml
kubernetes/vfc/charts/vfc-zte-sdnc-driver/Chart.yaml
kubernetes/vfc/charts/vfc-zte-vnfm-driver/Chart.yaml
kubernetes/vfc/requirements.yaml
kubernetes/vid/Chart.yaml
kubernetes/vid/charts/vid-mariadb-galera/Chart.yaml
kubernetes/vid/charts/vid-mariadb-galera/values.yaml
kubernetes/vid/requirements.yaml
kubernetes/vid/resources/certs/org.onap.vid.jks [new file with mode: 0644]
kubernetes/vid/resources/certs/org.onap.vid.trust.jks [new file with mode: 0644]
kubernetes/vid/templates/deployment.yaml
kubernetes/vid/templates/secrets.yaml
kubernetes/vid/templates/service.yaml
kubernetes/vid/values.yaml
kubernetes/vnfsdk/Chart.yaml
kubernetes/vnfsdk/requirements.yaml
kubernetes/vnfsdk/templates/service.yaml

index 31bff54..e01f7e5 100644 (file)
@@ -3,3 +3,9 @@
        url = ../aai/oom
         branch = .
         ignore = dirty
+[submodule "kubernetes/robot"]
+       path = kubernetes/robot
+       url = ../testsuite/oom
+        branch = .
+        ignore = dirty
+        
\ No newline at end of file
index 7f7b4f2..33cae2a 100644 (file)
--- a/INFO.yaml
+++ b/INFO.yaml
@@ -73,6 +73,11 @@ committers:
       company: 'Huawei'
       id: 'xuyang11'
       timezone: 'America/New_York'
+    - name: 'Sylvain Desbureaux'
+      email: 'sylvain.desbureaux@orange.com'
+      company: 'Orange'
+      id: 'sdesbure'
+      timezone: 'Paris/France'
 tsc:
     approval: 'https://lists.onap.org/pipermail/onap-tsc'
     changes:
diff --git a/docs/example-integration-override-v3.yaml b/docs/example-integration-override-v3.yaml
new file mode 100644 (file)
index 0000000..659389a
--- /dev/null
@@ -0,0 +1,64 @@
+global:
+  repository: 10.12.5.2:5000
+  pullPolicy: IfNotPresent
+#################################################################
+# This override file configures openstack parameters for ONAP
+#################################################################
+robot:
+  enabled: true
+  flavor: large
+  appcUsername: "appc@appc.onap.org"
+  appcPassword: "demo123456!"
+  # KEYSTONE Version 3  Required for Rocky and beyond
+  openStackKeystoneAPIVersion: "v3"
+  # OS_AUTH_URL without the /v3 from the openstack .RC file
+  openStackKeyStoneUrl: "http://10.12.25.2:5000"
+  # OS_PROJECT_ID from the openstack .RC file
+  openStackTenantId: "09d8566ea45e43aa974cf447ed591d77"
+  # OS_USERNAME from the openstack .RC file
+  openStackUserName: "OS_USERNAME_HERE"
+  #  OS_PROJECT_DOMAIN_ID from the openstack .RC file
+  #  in some environments it is a string but in other environmens it may be a numeric
+  openStackDomainId:  "default"
+  #  OS_USER_DOMAIN_NAME from the openstack .RC file
+  openStackUserDomain:  "Default"
+  openStackProjectName: "OPENSTACK_PROJECT_NAME_HERE"
+  ubuntu14Image: "ubuntu-14-04-cloud-amd64"
+  ubuntu16Image: "ubuntu-16-04-cloud-amd64"
+  openStackPublicNetId: "971040b2-7059-49dc-b220-4fab50cb2ad4"
+  openStackPrivateNetId: "83c84b68-80be-4990-8d7f-0220e3c6e5c8"
+  openStackPrivateSubnetId: "e571c1d1-8ac0-4744-9b40-c3218d0a53a0"
+  openStackPrivateNetCidr: "10.0.0.0/16"
+  openStackOamNetworkCidrPrefix: "10.0"
+  openStackSecurityGroup: "bbe028dc-b64f-4f11-a10f-5c6d8d26dc89"
+  dcaeCollectorIp: "10.12.6.109"
+  vnfPubKey: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKXDgoo3+WOqcUG8/5uUbk81+yczgwC4Y8ywTmuQqbNxlY1oQ0YxdMUqUnhitSXs5S/yRuAVOYHwGg2mCs20oAINrP+mxBI544AMIb9itPjCtgqtE2EWo6MmnFGbHB4Sx3XioE7F4VPsh7japsIwzOjbrQe+Mua1TGQ5d4nfEOQaaglXLLPFfuc7WbhbJbK6Q7rHqZfRcOwAMXgDoBqlyqKeiKwnumddo2RyNT8ljYmvB6buz7KnMinzo7qB0uktVT05FH9Rg0CTWH5norlG5qXgP2aukL0gk1ph8iAt7uYLf1ktp+LJI2gaF6L0/qli9EmVCSLr1uJ38Q8CBflhkh"
+  demoArtifactsVersion: "1.4.0"
+  demoArtifactsRepoUrl: "https://nexus.onap.org/content/repositories/releases"
+  scriptVersion: "1.4.0"
+  rancherIpAddress: "10.12.6.160"
+  config:
+    # use the python utility to encrypt the OS_PASSWORD for the OS_USERNAME
+    openStackEncryptedPasswordHere: "XXXXXXXXXXXXXXXXXXXXXXXX_OPENSTACK_PYTHON_PASSWORD_HERE_XXXXXXXXXXXXXXXX"
+    openStackSoEncryptedPassword:  "YYYYYYYYYYYYYYYYYYYYYYYY_OPENSTACK_JAVA_PASSWORD_HERE_YYYYYYYYYYYYYYYY"
+so:
+  enabled: true
+  so-catalog-db-adapter:
+    config:
+      openStackUserName: "OS_USERNAME_HERE"
+      # OS_AUTH_URL (keep the /v3) from the openstack .RC file
+      openStackKeyStoneUrl: "http://10.12.25.2:5000/v3"
+      # use the SO Java utility to encrypt the OS_PASSWORD for the OS_USERNAME
+      openStackEncryptedPasswordHere: "YYYYYYYYYYYYYYYYYYYYYYYY_OPENSTACK_JAVA_PASSWORD_HERE_YYYYYYYYYYYYYYYY"
+appc:
+  enabled: true
+  replicaCount: 3
+  config:
+    enableClustering: true
+    openStackType: "OpenStackProvider"
+    openStackName: "OpenStack"
+    openStackKeyStoneUrl: "http://10.12.25.2:5000/v3"
+    openStackServiceTenantName: "OPENSTACK_PROJECT_NAME_HERE"
+    openStackDomain: "OPEN_STACK_DOMAIN_NAME_HERE"
+    openStackUserName: "OS_USER_NAME_HERE"
+    openStackEncryptedPassword: "OPENSTACK_CLEAR_TEXT_PASSWORD_HERE"
index 3c491b4..bd5e3ee 100644 (file)
@@ -30,7 +30,7 @@ file like onap-all.yaml, onap-vfw.yaml or openstack.yaml file to suit your deplo
 OpenStack tenant information.
 
 .. note::
-  Standard and example override files (e.g. onap-all.yaml, openstack.yaml) can be found in 
+  Standard and example override files (e.g. onap-all.yaml, openstack.yaml) can be found in
   the oom/kubernetes/onap/resources/overrides/ directory.
 
 
@@ -77,23 +77,65 @@ Java encryption library is not easy to integrate with openssl/python that
 ROBOT uses in Dublin.
 
 .. note::
-  To generate SO openStackEncryptedPasswordHere :
+  To generate SO openStackEncryptedPasswordHere and openStackSoEncryptedPassword:
+
+  SO_ENCRYPTION_KEY=`cat ~/oom/kubernetes/so/resources/config/mso/encryption.key`
 
-  SO_ENCRYPTION_KEY=`cat ~/oom/kubenertes/so/resources/config/mso/encrypt.key`
   OS_PASSWORD=XXXX_OS_CLEARTESTPASSWORD_XXXX
 
   git clone http://gerrit.onap.org/r/integration
 
   cd integration/deployment/heat/onap-rke/scripts
+
+
   javac Crypto.java
+
+  [ if javac is not installed 'apt-get update ; apt-get install default-jdk' ]
+
   java Crypto "$OS_PASSWORD" "$SO_ENCRYPTION_KEY"
 
 
 d. Update the OpenStack parameters:
 
+There are assumptions in the demonstration VNF heat templates about the networking 
+available in the environment. To get the most value out of these templates and the 
+automation that can help confirm the setup is correct, please observe the following 
+constraints.
+
+openStackPublicNetId: 
+
+This network should allow heat templates to add interfaces. 
+This need not be an external network, floating IPs can be assigned to the ports on 
+the VMs that are created by the heat template but its important that neutron allow 
+ports to be created on them.
+
+openStackPrivateNetCidr: "10.0.0.0/16"
+
+This ip address block is used to assign OA&M addresses on VNFs to allow ONAP connectivity.
+The demonstration heat templates assume that 10.0 prefix can be used by the VNFs and the 
+demonstration ip addressing plan embodied in the preload template prevent conflicts when 
+instantiating the various VNFs. If you need to change this, you will need to modify the preload 
+data in the robot helm chart like integration_preload_parametes.py and the demo/heat/preload_data 
+in the robot container. The size of the CIDR should be sufficient for ONAP and the VMs you expect 
+to create.
+
+openStackOamNetworkCidrPrefix: "10.0"
+
+This ip prefix mush match the openStackPrivateNetCidr and is a helper variable to some of the
+robot scripts for demonstration. A production deployment need not worry about this
+setting but for the demonstration VNFs the ip asssignment strategy assumes 10.0 ip prefix.
+
+
+Example Keystone v2.0 
 .. literalinclude:: example-integration-override.yaml
    :language: yaml
 
+Example Keystone v3  (required for Rocky and later releases)
+.. literalinclude:: example-integration-override-v3.yaml
+   :language: yaml
+
+
+
 **Step 4.** To setup a local Helm server to server up the ONAP charts::
 
   > helm serve &
@@ -129,32 +171,42 @@ single command
   The --timeout 900 is currently required in Dublin to address long running initialization tasks
   for DMaaP and SO. Without this timeout value both applications may fail to deploy.
 
- a. To deploy all ONAP applications use this command::
+To deploy all ONAP applications use this command::
 
     > cd oom/kubernetes
-    > helm deploy dev local/onap --namespace onap -f onap/resources/overrides/onap-all.yaml -f onap/resources/overrides/openstack.yaml --timeout 900
+    > helm deploy dev local/onap --namespace onap -f onap/resources/overrides/onap-all.yaml -f onap/resources/overrides/environment.yaml -f onap/resources/overrides/openstack.yaml --timeout 900
 
- b. If you are using a custom override (e.g. integration-override.yaml) use this command::
+All override files may be customized (or replaced by other overrides) as per needs.
 
-    > helm deploy dev local/onap -f /root/integration-override.yaml --namespace onap --timeout 900
+onap-all.yaml
 
+  Enables the modules in the ONAP deployment. As ONAP is very modular, it is possible to customize ONAP and disable some components through this configuration file.
 
- c. If you have a slower cloud environment you may want to use the public-cloud.yaml
-    which has longer delay intervals on database updates.::
+environment.yaml
 
-    > helm deploy dev local/onap -f /root/oom/kubernetes/onap/resources/environments/public-cloud.yaml -f /root/integration-override.yaml --namespace onap --timeout 900
+  Includes configuration values specific to the deployment environment.
 
+  Example: adapt readiness and liveness timers to the level of performance of your infrastructure
 
-**Step 9.** Commands to interact with the OOM installation
+openstack.yaml
 
-Use the following to monitor your deployment and determine when ONAP is
-ready for use::
+  Includes all the Openstack related information for the default target tenant you want to use to deploy VNFs from ONAP and/or additional parameters for the embedded tests.
+
+**Step 9.** Verify ONAP installation
+
+Use the following to monitor your deployment and determine when ONAP is ready for use::
 
   > kubectl get pods -n onap -o=wide
 
-Undeploying onap can be done using the following command::
+.. note::
+  While all pods may be in a Running state, it is not a guarantee that all components are running fine.
+
+  Launch the healthcheck tests using Robot to verify that the components are healthy.
+
+  > ~/oom/kubernetes/robot/ete-k8s.sh onap health
 
-  > helm undeploy dev --purge
+**Step 10.** Undeploy ONAP
 
+> helm undeploy dev --purge
 
 More examples of using the deploy and undeploy plugins can be found here: https://wiki.onap.org/display/DW/OOM+Helm+%28un%29Deploy+plugins
index 3ccde8d..90a060b 100644 (file)
@@ -30,19 +30,19 @@ to deploy and manage our Kubernetes Cluster.
 
 The result at the end of this tutorial will be:
 
-*1.* Creation of a Key Pair to use with Open Stack and RKE
+#. Creation of a Key Pair to use with Open Stack and RKE
 
-*2.* Creation of OpenStack VMs to host Kubernetes Control Plane
+#. Creation of OpenStack VMs to host Kubernetes Control Plane
 
-*3.* Creation of OpenStack VMs to host Kubernetes Workers
+#. Creation of OpenStack VMs to host Kubernetes Workers
 
-*4.* Installation and configuration of RKE to setup an HA Kubernetes
+#. Installation and configuration of RKE to setup an HA Kubernetes
 
-*5.* Installation and configuration of kubectl
+#. Installation and configuration of kubectl
 
-*5.* Installation and configuration of helm
+#. Installation and configuration of helm
 
-*7.* Creation of an NFS Server to be used by ONAP as shared persistance
+#. Creation of an NFS Server to be used by ONAP as shared persistance
 
 There are many ways one can execute the above steps. Including automation through the use of HEAT to setup the OpenStack VMs.
 To better illustrate the steps involved, we have captured the manual creation of such an environment using the ONAP Wind River Open Lab.
@@ -62,7 +62,8 @@ Use an existing key pair, import one or create a new one to assign.
 For the purpose of this guide, we will assume a new local key called "onap-key"
 has been downloaded and is copied into **~/.ssh/**, from which it can be referenced.
 
-Example:
+Example::
+
   > mv onap-key ~/.ssh
 
   > chmod 600 ~/.ssh/onap-key
@@ -250,13 +251,11 @@ in this file.
 
 Run RKE
 -------
-From within the same directory as the cluster.yml file, simply execute:
+From within the same directory as the cluster.yml file, simply execute::
 
   > rke up
 
-The output will look something like:
-
-.. code-block::
+The output will look something like::
 
   INFO[0000] Initiating Kubernetes cluster
   INFO[0000] [certificates] Generating admin certificates and kubeconfig
@@ -307,6 +306,9 @@ https://storage.googleapis.com/kubernetes-release/release/v1.13.5/bin/darwin/amd
 
 Validate deployment
 -------------------
+
+::
+
   > cp kube_config_cluster.yml ~/.kube/config.onap
 
   > export KUBECONFIG=~/.kube/config.onap
@@ -315,7 +317,7 @@ Validate deployment
 
   > kubectl get nodes -o=wide
 
-.. code-block::
+::
 
   NAME             STATUS   ROLES               AGE     VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE           KERNEL-VERSION      CONTAINER-RUNTIME
   onap-control-1   Ready    controlplane,etcd   3h53m   v1.13.5   10.0.0.8      <none>        Ubuntu 18.04 LTS   4.15.0-22-generic   docker://18.9.5
@@ -338,7 +340,8 @@ Validate deployment
 Install Helm
 ============
 
-Example Helm client install on Linux:
+Example Helm client install on Linux::
+
   > wget http://storage.googleapis.com/kubernetes-helm/helm-v2.12.3-linux-amd64.tar.gz
 
   > tar -zxvf helm-v2.12.3-linux-amd64.tar.gz
@@ -347,6 +350,9 @@ Example Helm client install on Linux:
 
 Initialize Kubernetes Cluster for use by Helm
 ---------------------------------------------
+
+::
+
   > kubectl -n kube-system create serviceaccount tiller
 
   > kubectl create clusterrolebinding tiller --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
index 37d8b3f..01e3524 100644 (file)
 ONAP Operations Manager Release Notes
 =====================================
 
+Version 5.0.0 (El Alto Early Drop)
+----------------------------------
+
+:Release Date: 2019-08-19
+
+Summary
+-------
+
+**Software Requirements**
+
+* Upgraded to Kubernetes 1.15.x and Helm 1.14.x
+
+
 Version 4.0.0 (Dublin Release)
 ------------------------------
 
@@ -55,6 +68,7 @@ Summary
 
 * In default deployment OOM (consul-server-ui) exposes HTTP port 30270 outside of cluster. [`OJSI-134 <https://jira.onap.org/browse/OJSI-134>`_]
 * Hard coded password used for all oom deployments [`OJSI-188 <https://jira.onap.org/browse/OJSI-188>`_]
+* CVE-2019-12127 - OOM exposes unprotected API/UI on port 30270 [`OJSI-202 <https://jira.onap.org/browse/OJSI-202>`_]
 
 *Known Vulnerabilities in Used Modules*
 
index b7bfb7f..5d0582a 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Application Authorization Framework
 name: aaf
-version: 4.0.0
+version: 5.0.0
index f06d149..3706810 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF cassandra
 name: aaf-cass
-version: 4.0.0
+version: 5.0.0
index c664d03..5bbb1d7 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       containers:
       - name: {{ include "common.name" . }}
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_cass:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.cass.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         # installing with cmd "onap" will not only initialize the DB, but add ONAP bootstrap data as well
         command: ["/bin/bash","/opt/app/aaf/cass_init/cmd.sh","onap"]
index 3ece45d..b284d5b 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP AAF Certificate Manager
 name: aaf-cm
-version: 4.0.0
+version: 5.0.0
index 87bcaa4..19d7625 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       initContainers:
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_config:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.config.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command: ["bash","-c","cd /opt/app/aaf_config && bin/pod_wait.sh config aaf-service remove && bin/agent.sh"]
         volumeMounts:
@@ -57,14 +57,14 @@ spec:
             value: "{{ .Values.global.aaf.aaf_release }}"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_container
-            value: "oom"
           - name: aaf_locator_public_fqdn
             value: "{{.Values.global.aaf.public_fqdn}}"
           - name: aaf_locator_name
             value: "{{.Values.global.aaf.aaf_locator_name}}"
           - name: aaf_locator_name_oom
             value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
+          - name: cm_always_ignore_ips
+            value: "true"
           - name: CASSANDRA_CLUSTER
             value: "{{.Values.global.aaf.cass.fqdn}}.{{ .Release.Namespace }}"
 #          - name: CASSANDRA_USER
@@ -76,7 +76,7 @@ spec:
       containers:
       - name: {{ include "common.name" . }}
         command: ["/bin/bash","-c","cd /opt/app/aaf && /bin/bash bin/pod_wait.sh aaf-cm aaf-locate && exec bin/cm"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_cm:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: "/opt/app/osaaf"
index 5c94aa8..3c0a4d1 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF File Server
 name: aaf-fs
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 9f97da9..cd72fdd 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       initContainers:
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_config:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.config.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command: ["bash","-c","cd /opt/app/aaf_config && bin/pod_wait.sh config aaf-service remove && bin/agent.sh"]
         volumeMounts:
@@ -57,14 +57,14 @@ spec:
             value: "{{ .Values.global.aaf.aaf_release }}"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_container
-            value: "oom"
           - name: aaf_locator_public_fqdn
             value: "{{.Values.global.aaf.public_fqdn}}"
           - name: aaf_locator_name
             value: "{{.Values.global.aaf.aaf_locator_name}}"
           - name: aaf_locator_name_oom
             value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
+          - name: cm_always_ignore_ips
+            value: "true"
           - name: CASSANDRA_CLUSTER
             value: "{{.Values.global.aaf.cass.fqdn}}.{{ .Release.Namespace }}"
 #          - name: CASSANDRA_USER
@@ -72,10 +72,11 @@ spec:
 #          - name: CASSANDRA_PASSWORD
 #            value: ""
 #         - name: CASSANDRA_PORT
+#            value: ""
       containers:
       - name: {{ include "common.name" . }}
         command: ["/bin/bash","-c","cd /opt/app/aaf && /bin/bash bin/pod_wait.sh aaf-fs aaf-locate && exec bin/fs"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_fs:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: "/opt/app/osaaf"
index 3313c66..fb41c5f 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF GUI
 name: aaf-gui
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index d067b5e..4a433cc 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       initContainers:
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_config:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.config.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command: ["bash","-c","cd /opt/app/aaf_config && bin/pod_wait.sh config aaf-service remove && bin/agent.sh"]
         volumeMounts:
@@ -57,14 +57,14 @@ spec:
             value: "{{ .Values.global.aaf.aaf_release }}"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_container
-            value: "oom"
           - name: aaf_locator_public_fqdn
             value: "{{.Values.global.aaf.public_fqdn}}"
           - name: aaf_locator_name
             value: "{{.Values.global.aaf.aaf_locator_name}}"
           - name: aaf_locator_name_oom
             value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
+          - name: cm_always_ignore_ips
+            value: "true"
           - name: CASSANDRA_CLUSTER
             value: "{{.Values.global.aaf.cass.fqdn}}.{{ .Release.Namespace }}"
 #          - name: CASSANDRA_USER
@@ -72,10 +72,11 @@ spec:
 #          - name: CASSANDRA_PASSWORD
 #            value: ""
 #         - name: CASSANDRA_PORT
+#            value: ""
       containers:
       - name: {{ include "common.name" . }}
         command: ["/bin/bash","-c","cd /opt/app/aaf && /bin/bash bin/pod_wait.sh aaf-gui aaf-locate && exec bin/gui"]  
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_gui:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: "/opt/app/osaaf"
index 89f061b..0ab6de1 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF Hello
 name: aaf-hello
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index bd74a42..ef4d8e7 100644 (file)
 # 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/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml b/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml
new file mode 100644 (file)
index 0000000..066bf38
--- /dev/null
@@ -0,0 +1,48 @@
+{{- if and .Values.global.persistence.enabled (not .Values.persistence.existingClaim) -}}
+#########
+##  ============LICENSE_START====================================================
+##  org.onap.aaf
+##  ===========================================================================
+##  Copyright (c) 2017 AT&T 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.
+##  ============LICENSE_END====================================================
+##
+
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+  name: {{ .Release.Name }}-aaf-hello-pv
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ .Chart.Name  }}-hello
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+    name: {{ include "common.fullname" . }}
+spec:
+  capacity:
+    storage: {{ .Values.persistence.config.size}}
+  accessModes:
+    - {{ .Values.persistence.config.accessMode }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.config.volumeReclaimPolicy }}
+  hostPath:
+     path: {{ .Values.persistence.config.mountPath }}
+{{- if .Values.persistence.config.storageClass }}
+{{- if (eq "-" .Values.persistence.config.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.config.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
diff --git a/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml b/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml
new file mode 100644 (file)
index 0000000..7c45b8b
--- /dev/null
@@ -0,0 +1,52 @@
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+#########
+##  ============LICENSE_START====================================================
+##  org.onap.aaf
+##  ===========================================================================
+##  Copyright (c) 2017 AT&T 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.
+##  ============LICENSE_END====================================================
+##
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ .Release.Name }}-aaf-hello-pvc
+  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:
+      app: {{ include "common.name" . }}-hello
+  accessModes:
+    - {{ .Values.persistence.config.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.config.size }}
+{{- if .Values.persistence.config.storageClass }}
+{{- if (eq "-" .Values.persistence.config.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.config.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
+
index 9faa580..c5fcf68 100644 (file)
@@ -11,7 +11,6 @@
 # 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:
@@ -30,75 +29,71 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: aaf-hello-vol
+        persistentVolumeClaim:
+          claimName: {{ .Release.Name }}-aaf-hello-pvc
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
       initContainers:
-      - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_agent:{{.Values.global.aaf.imageVersion}}
+      - name: {{ include "common.name" . }}-config
+        image: {{ .Values.global.repository }}/{{.Values.aaf_init.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
-        - mountPath: "/opt/app/osaaf/local"
+        - mountPath: "/opt/app/osaaf"
           name: aaf-hello-vol
-        command: ["bash","-c","/opt/app/aaf_config/bin/pod_wait.sh config nc aaf-cm.{{.Release.Namespace}} 8150 remove && cd /opt/app/osaaf/local && /opt/app/aaf_config/bin/agent.sh"]
+# NOTE: Before this, need Liveness Attached to aaf-certman
+        command: ["bash","-c","exec /opt/app/aaf_config/bin/agent.sh"]
         env:
-          - name: aaf_env
-            value: "{{ .Values.global.aaf.aaf_env }}"
-          - name: cadi_latitude
-            value: "{{ .Values.global.aaf.cadi_latitude }}"
-          - name: cadi_longitude
-            value: "{{ .Values.global.aaf.cadi_longitude }}"
+          - name: APP_FQI
+            value: "{{ .Values.aaf_init.fqi }}"
           - name: aaf_locate_url
-            value: "https://aaf-locate.{{ .Release.Namespace}}:{{.Values.global.aaf.locate.internal_port}}"
-          - name: aaf_locator_container
-            value: "oom"
-          - name: aaf_release
-            value: "{{ .Values.global.aaf.aaf_release }}"
-          - name: aaf_locator_container_ns
-            value: "{{ .Release.Namespace }}"
+            value: "https://aaf-locate.{{ .Release.Namespace}}:8095"
           - name: aaf_locator_container
             value: "oom"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
+          - name: aaf_locator_fqdn
+            value: "{{ .Values.aaf_init.fqdn }}"
           - name: aaf_locator_app_ns
-            value: "org.osaaf.aaf"
-          - name: "APP_FQDN"
-            value: "{{ .Values.global.aaf.hello.fqdn }}"
-          - name: "APP_FQI"
-            value: "aaf@aaf.osaaf.org"
-          - name: "DEPLOY_FQI"
+            value: "{{ .Values.aaf_init.app_ns }}"
+          - name: DEPLOY_FQI
             value: "deployer@people.osaaf.org"
-          - name: "DEPLOY_PASSWORD"
+# Note: We want to put this in Secrets or at LEAST ConfigMaps
+          - name: DEPLOY_PASSWORD
             value: "demo123456!"
-# Hello specific.  Clients don't necessarily need this
+# Note: want to put this on Nodes, evenutally
+          - name: cadi_longitude
+            value: "{{ .Values.aaf_init.cadi_longitude }}"
+          - name: cadi_latitude
+            value: "{{ .Values.aaf_init.cadi_latitude }}"
+# Hello specific.  Clients don't don't need this, unless Registering with AAF Locator
           - name: aaf_locator_public_fqdn
             value: "{{.Values.global.aaf.public_fqdn}}"
-          - name: aaf_locator_name
-            value: "{{.Values.global.aaf.aaf_locator_name}}"
-          - name: aaf_locator_name_oom
-            value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
-          - name: aaf_locator_fqdn_oom
-            value: "%N.%CNS"
       containers:
       - name: {{ include "common.name" . }}
-        command: ["/bin/bash","-c","cd /opt/app/aaf && exec bin/hello"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_hello:{{.Values.global.aaf.imageVersion}}
+        command: ["bash","-c","cd /opt/app/aaf && if [ ! -d /opt/app/osaaf/etc ]; then cp -Rf etc logs /opt/app/osaaf; fi && exec bin/hello"]
+        image: {{ .Values.global.repository }}/{{.Values.service.image }}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
-        - mountPath: "/opt/app/osaaf/local"
+        - mountPath: "/opt/app/osaaf"
           name: aaf-hello-vol
-        - mountPath: "/opt/app/aaf/status"
-          name: aaf-status-vol
         - mountPath: /etc/localtime
           name: localtime
           readOnly: true
         {{- if eq .Values.liveness.enabled true }}
         livenessProbe:
           tcpSocket:
-            port: {{ .Values.service.internalPort }}
+            port: {{ .Values.service.port }}
           initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
           periodSeconds: {{ .Values.liveness.periodSeconds }}
         {{ end -}}
         readinessProbe:
           tcpSocket:
-            port: {{ .Values.service.internalPort }}
+            port: {{ .Values.service.port }}
           initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
           periodSeconds: {{ .Values.readiness.periodSeconds }}
         resources:
@@ -111,14 +106,3 @@ spec:
       affinity:
 {{ toYaml .Values.affinity | indent 10 }}
       {{- end }}
-      volumes:
-      - name: localtime
-        hostPath:
-          path: /etc/localtime
-      - name: aaf-status-vol
-        persistentVolumeClaim:
-          claimName: {{ .Release.Name }}-aaf-status-pvc
-      - name: aaf-hello-vol
-        emptyDir: {}
-      imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 102e85d..ab89171 100644 (file)
@@ -24,8 +24,8 @@ metadata:
     heritage: {{ .Release.Service }}
 spec:
   ports:
-    - port: {{ .Values.global.aaf.hello.internal_port }}
-      nodePort: {{ .Values.global.aaf.hello.public_port }}
+    - port: {{ .Values.service.port }}
+      nodePort: {{ .Values.service.public_port }}
       name: aaf-hello
   selector:
     app: {{ include "common.name" . }}
index c3ed9e1..ea6665c 100644 (file)
@@ -24,7 +24,34 @@ flavor: small
 # Application configuration defaults.
 #################################################################
 # application image
+aaf_init:
+  # You might want this in your own app.  For AAF, we store in global
+  # replicas: 1
+  fqdn: "aaf-hello"
+  image: onap/aaf/aaf_agent:2.1.15
+  app_ns: "org.osaaf.aaf"
+  fqi: "aaf@aaf.osaaf.org"
+  fqdn: "aaf-hello"
+  public_fqdn: "aaf.osaaf.org"
+  deploy_fqi: "deployer@people.osaaf.org"
+  cadi_latitude: "38.0"
+  cadi_longitude: "-72.0"
 
+service:
+  image: onap/aaf/aaf_hello:2.1.15
+  port: "8130"
+  public_port: "31119"
+
+persistence:
+  enabled: true
+  config:
+    #existingClaim:
+    # You will want "Reatan" in non-Hello Example.
+    volumeReclaimPolicy: Delete
+    accessMode: ReadWriteMany
+    size: 40M
+    storageClass: "manual"
+    mountPath: "/mnt/data/aaf/hello"
 
 nodeSelector: {}
 
@@ -42,15 +69,6 @@ readiness:
   initialDelaySeconds: 5
   periodSeconds: 10
 
-service:
-  name: aaf-hello
-  type: ClusterIP
-  portName: aaf-hello
-  #targetPort
-  internalPort: 8130
-  #port
-  externalPort: 8130
-
 ingress:
   enabled: false
 
index 10c2b3e..c7f5fc3 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF Locate
 name: aaf-locate
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index f504063..69d1612 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       initContainers:
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_config:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.config.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command: ["bash","-c","cd /opt/app/aaf_config && bin/pod_wait.sh config aaf-service remove && bin/agent.sh"]
         volumeMounts:
@@ -57,14 +57,14 @@ spec:
             value: "{{ .Values.global.aaf.aaf_release }}"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_container
-            value: "oom"
           - name: aaf_locator_public_fqdn
             value: "{{.Values.global.aaf.public_fqdn}}"
           - name: aaf_locator_name
             value: "{{.Values.global.aaf.aaf_locator_name}}"
           - name: aaf_locator_name_oom
             value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
+          - name: cm_always_ignore_ips
+            value: "true"
           - name: CASSANDRA_CLUSTER
             value: "{{.Values.global.aaf.cass.fqdn}}.{{ .Release.Namespace }}"
 #          - name: CASSANDRA_USER
@@ -72,10 +72,11 @@ spec:
 #          - name: CASSANDRA_PASSWORD
 #            value: ""
 #         - name: CASSANDRA_PORT
+#            value: ""
       containers:
       - name: {{ include "common.name" . }}
         command: ["/bin/bash","-c","cd /opt/app/aaf && /bin/bash bin/pod_wait.sh aaf-locate aaf-service && exec bin/locate"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_locate:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: "/opt/app/osaaf"
index 4ce29df..c073652 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF OAuth
 name: aaf-oauth
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index cc328d5..b371c86 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       initContainers:
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_config:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.config.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command: ["bash","-c","cd /opt/app/aaf_config && bin/pod_wait.sh config aaf-service remove && bin/agent.sh"]
         volumeMounts:
@@ -57,14 +57,14 @@ spec:
             value: "{{ .Values.global.aaf.aaf_release }}"
           - name: aaf_locator_container_ns
             value: "{{ .Release.Namespace }}"
-          - name: aaf_locator_container
-            value: "oom"
           - name: aaf_locator_public_fqdn
             value: "{{.Values.global.aaf.public_fqdn}}"
           - name: aaf_locator_name
             value: "{{.Values.global.aaf.aaf_locator_name}}"
           - name: aaf_locator_name_oom
             value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
+          - name: cm_always_ignore_ips
+            value: "true"
           - name: CASSANDRA_CLUSTER
             value: "{{.Values.global.aaf.cass.fqdn}}.{{ .Release.Namespace }}"
 #          - name: CASSANDRA_USER
@@ -72,10 +72,11 @@ spec:
 #          - name: CASSANDRA_PASSWORD
 #            value: ""
 #         - name: CASSANDRA_PORT
+#            value: ""
       containers:
       - name: {{ include "common.name" . }}
         command: ["/bin/bash","-c","cd /opt/app/aaf && /bin/bash bin/pod_wait.sh aaf-oauth aaf-service && exec bin/oauth"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_oauth:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: "/opt/app/osaaf"
index 80b2b8f..a5a38f4 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP AAF Service
 name: aaf-service
-version: 4.0.0
+version: 5.0.0
index 1801bfe..1c09718 100644 (file)
@@ -32,7 +32,7 @@ spec:
     spec:
       initContainers:
       - name: {{ include "common.name" . }}-config-container
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_config:{{.Values.global.aaf.imageVersion}}
+        image: {{ .Values.global.repository }}/{{.Values.global.aaf.config.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command: ["bash","-c","cd /opt/app/aaf_config && bin/pod_wait.sh config nc aaf-cass.{{ .Release.Namespace }} 9042 sleep 15 remove && bin/agent.sh"]
         volumeMounts:
@@ -63,6 +63,8 @@ spec:
             value: "{{.Values.global.aaf.aaf_locator_name}}"
           - name: aaf_locator_name_oom
             value: "{{.Values.global.aaf.aaf_locator_name_oom}}"
+          - name: cm_always_ignore_ips
+            value: "true"
           - name: CASSANDRA_CLUSTER
             value: "{{.Values.global.aaf.cass.fqdn}}.{{ .Release.Namespace }}"
 #          - name: CASSANDRA_USER
@@ -73,9 +75,12 @@ spec:
 #            value: ""
       containers:
       - name: {{ include "common.name" . }}
-        command: ["/bin/bash","-c","cd /opt/app/aaf && bin/pod_wait.sh aaf-service aaf-cass  && exec bin/service"]
-        image: {{ .Values.global.repository }}/onap/aaf/aaf_service:{{.Values.global.aaf.imageVersion}}
+        command: ["/bin/bash","-c","cd /opt/app/aaf  && bin/pod_wait.sh aaf-service aaf-cass  && exec bin/service"]
+        image: {{.Values.global.repository}}/{{.Values.global.aaf.image}}
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        env:
+          - name: cm_always_ignore_ips
+            value: "true"
         lifecycle:
           preStop:
             exec:
index 9402b00..0cb82cb 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Secret Management Service
 name: aaf-sms
-version: 4.0.0
+version: 5.0.0
index 88079d2..876f358 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Secret Management Service Quorum Client
 name: aaf-sms-quorumclient
-version: 4.0.0
+version: 5.0.0
index 2c8a7a6..1c3a1af 100644 (file)
@@ -16,4 +16,4 @@ apiVersion: v1
 description: Chart to launch Vault as SMS backend
 name: aaf-sms-vault
 appVersion: 0.9.5
-version: 4.0.0
+version: 5.0.0
index 6ad7e7f..5b9b3e5 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Hardware Security Components
 name: aaf-sshsm
-version: 4.0.0
+version: 5.0.0
index ce74887..3a9b9cd 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Trusted Platform Module Resource Manager
 name: aaf-sshsm-abrmd
-version: 4.0.0
+version: 5.0.0
index 14ddd7b..50ee07c 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Trusted Platform Module Distribution Center
 name: aaf-sshsm-distcenter
-version: 4.0.0
+version: 5.0.0
index 6260cdd..bc0f559 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Trusted Platform Module Test CA Service
 name: aaf-sshsm-testca
-version: 4.0.0
+version: 5.0.0
index 7c18fbc..e6ac00b 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 1ddb604..0109a5e 100644 (file)
@@ -23,30 +23,35 @@ global:
   ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
   persistence:
     enabled: true
-  pullPolicy: Always
+  # Standard OOM
+  pullPolicy: "Always"
   repository: "nexus3.onap.org:10001"
-  # pullPolicy: IfNotPresent
-  # repository: "nexus3.onap.org:10003"
+
+  # Use Local
+  #pullPolicy: IfNotPresent
+  #repository: "nexus3.onap.org:10003"
 
   aaf:
-    imageVersion: 2.1.13
-    #imageVersion: latest
     readiness: false
+    image: onap/aaf/aaf_core:2.1.15
     aaf_env: "DEV"
     public_fqdn: "aaf.osaaf.org"
-    aaf_release: "Dublin"
+    aaf_release: "El Alto"
   # DUBLIN ONLY - for M4 compatibility with Casablanca
-    aaf_locator_name: "public.%NS.%N"
-    aaf_locator_name_oom: "%NS.%N"
+  #  aaf_locator_name: "public.%NS.%N"
+  #  aaf_locator_name_oom: "%NS.%N"
   # EL ALTO and Beyond
-  #  aaf_locator_name: "%NS.%N"
-  #  aaf_locator_name_oom: "%CNS.%NS.%N"
+    aaf_locator_name: "%NS.%N"
+    aaf_locator_name_oom: "%CNS.%NS.%N"
     cadi_latitude: "38.0"
     cadi_longitude: "-72.0"
     cadi_x509_issuers: "CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US"
 
+    config:
+      image: onap/aaf/aaf_config:2.1.15
     cass:
       replicas: 1
+      image: onap/aaf/aaf_cass:2.1.15
       fqdn: "aaf-cass"
       cluster_name: "osaaf"
       heap_new_size: "512M"
@@ -88,9 +93,6 @@ global:
       public_port: 31115
     hello:
       replicas: 0
-      fqdn: "aaf-hello"
-      internal_port: 8130
-      public_port: 31116
 
 #################################################################
 # Application configuration defaults.
index 6509a17..55cb73c 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 6509a172751b3c85995100e3d3a205abe73b116c
+Subproject commit 55cb73cadc59537643c0fe5cb7ededadc9ff2b48
index b7a0755..fdda8bb 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: Application Controller
 name: appc
-version: 4.0.0
+version: 5.0.0
index de5213f..c1ffaef 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP APPC Ansible Server
 name: appc-ansible-server
-version: 4.0.0
+version: 5.0.0
index 3944441..dedaefb 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 25257ea..6fef70c 100644 (file)
@@ -19,7 +19,7 @@
 kind: PersistentVolume
 apiVersion: v1
 metadata:
-  name: {{ include "common.fullname" $global }}-data{{$i}}
+  name: {{ include "common.fullname" $global }}-playbook{{$i}}
   namespace: {{ include "common.namespace" $global }}
   labels:
     app: {{ include "common.fullname" $global }}
@@ -32,7 +32,7 @@ spec:
     storage: {{ $global.Values.persistence.size}}
   accessModes:
     - {{ $global.Values.persistence.accessMode }}
-  storageClassName: "{{ include "common.fullname" $global }}-data"
+  storageClassName: "{{ include "common.fullname" $global }}-playbook"
   persistentVolumeReclaimPolicy: {{ $global.Values.persistence.volumeReclaimPolicy }}
   hostPath:
     path: {{ $global.Values.global.persistence.mountPath | default $global.Values.persistence.mountPath }}/{{ $global.Release.Name }}/{{ $global.Values.persistence.mountSubPath }}{{$i}}
index 1df20c2..f7fa15c 100644 (file)
@@ -30,6 +30,13 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
+      initContainers:
+      - name: {{ include "common.name" . }}-chown
+        image: "busybox"
+        command: ["sh", "-c", "chown -R {{ .Values.config.ansibleUid }}:{{ .Values.config.ansibleGid}} {{ .Values.persistence.playbookPath }}"]
+        volumeMounts:
+          - mountPath: {{ .Values.persistence.playbookPath }}
+            name: {{ include "common.fullname" . }}-playbook
       containers:
         - name: {{ include "common.name" . }}
           command: ["/bin/bash"]
@@ -60,7 +67,7 @@ spec:
             name: config
             subPath: RestServer_config
           - mountPath: {{ .Values.persistence.playbookPath }}
-            name: {{ include "common.fullname" . }}-data
+            name: {{ include "common.fullname" . }}-playbook
           resources:
 {{ include "common.resources" . | indent 12 }}
         {{- if .Values.nodeSelector }}
@@ -80,20 +87,18 @@ spec:
             name: {{ include "common.fullname" . }}
             defaultMode: 0644
 {{ if not .Values.persistence.enabled }}
-        - name: {{ include "common.fullname" . }}-data
+        - name: {{ include "common.fullname" . }}-playbook
           emptyDir: {}
 {{ else }}
   volumeClaimTemplates:
   - metadata:
-      name: {{ include "common.fullname" . }}-data
+      name: {{ include "common.fullname" . }}-playbook
       labels:
         name: {{ include "common.fullname" . }}
     spec:
       accessModes: [ {{ .Values.persistence.accessMode }} ]
-      storageClassName: {{ include "common.fullname" . }}-data
+      storageClassName: {{ include "common.fullname" . }}-playbook
       resources:
         requests:
           storage: {{ .Values.persistence.size }}
 {{ end }}
-    imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 59cf29f..f2dd150 100644 (file)
@@ -37,6 +37,8 @@ debugEnabled: false
 
 # application configuration
 config:
+  ansibleUid: 100
+  ansibleGid: 101
   appcChartName: appc
   mysqlServiceName: appc-dbhost
   configDir: /opt/onap/ccsdk
@@ -89,7 +91,7 @@ persistence:
   size: 1Gi
   mountPath: /dockerdata-nfs
   mountSubPath: appc/ansible
-  playbookPath: /var/local
+  playbookPath: /home/ansible
 
 ingress:
   enabled: false
index 7680f7f..8bbbbd4 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP APPC Self Service Controller Design Tool
 name: appc-cdt
-version: 4.0.0
+version: 5.0.0
index fae2fe2..ad039c2 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index e48d857..43eeee3 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: dgbuilder
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh
deleted file mode 100755 (executable)
index 724f4e7..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-#!/bin/bash
-
-###
-# ============LICENSE_START=======================================================
-# APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T 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.
-# ============LICENSE_END=========================================================
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-###
-
-ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
-APPC_HOME=${APPC_HOME:-/opt/onap/appc}
-ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
-APPC_FEATURE_DIR=${APPC_FEATURE_DIR:-${APPC_HOME}/features}
-
-function featureInstall {
-COUNT=0
-while [ $COUNT -lt 10 ]; do
-  ${ODL_HOME}/bin/client feature:install $1 2> /tmp/installErr
-  cat /tmp/installErr
-  if grep -q 'Failed to get the session' /tmp/installErr; then
-    sleep 10
-  else
-    let COUNT=10
-  fi
-  let COUNT=COUNT+1
-done
-}
-
- APPC_FEATURES=" \
- appc-metric \
- appc-dmaap-adapter \
- appc-chef-adapter \
- appc-netconf-adapter \
- appc-rest-adapter \
- appc-lifecycle-management \
- appc-dispatcher \
- appc-provider \
- appc-dg-util \
- appc-dg-shared \
- appc-sdc-listener \
- appc-oam \
- appc-iaas-adapter \
- appc-ansible-adapter \
- appc-sequence-generator \
- appc-artifact-handler \
- appc-aai-client"
-
-APPC_FEATURES_1=" \
- onap-appc-core \
- onap-appc-metric \
- onap-appc-dmaap-adapter \
- onap-appc-chef-adapter \
- onap-appc-netconf-adapter \
- onap-appc-rest-adapter \
- onap-appc-lifecycle-management \
- onap-appc-license-manager"
-
- APPC_FEATURES_2=" \
- onap-appc-dg-util \
- onap-appc-dg-shared \
- onap-appc-sdc-listener \
- onap-appc-oam \
- onap-appc-iaas-adapter \
- onap-appc-ansible-adapter \
- onap-appc-sequence-generator \
- onap-appc-config-generator \
- onap-appc-config-data-services \
- onap-appc-config-adaptor \
- onap-appc-config-audit \
- onap-appc-config-encryption-tool \
- onap-appc-config-flow-controller \
- onap-appc-config-params \
- onap-appc-artifact-handler
- onap-appc-aai-client \
- onap-appc-event-listener \
- onap-appc-network-inventory-client \
- onap-appc-design-services \
- onap-appc-interfaces-service"
-
- APPC_FEATURES_UNZIP=" \
- appc-core \
- appc-metric \
- appc-dmaap-adapter \
- appc-event-listener \
- appc-chef-adapter \
- appc-netconf-adapter \
- appc-rest-adapter \
- appc-lifecycle-management \
- appc-dispatcher \
- appc-provider \
- appc-dg-util \
- appc-dg-shared \
- appc-sdc-listener \
- appc-oam \
- appc-iaas-adapter \
- appc-ansible-adapter \
- appc-sequence-generator \
- appc-config-generator \
- appc-config-data-services \
- appc-config-adaptor \
- appc-config-audit \
- appc-config-encryption-tool \
- appc-config-flow-controller \
- appc-config-params \
- appc-artifact-handler \
- appc-aai-client \
- appc-network-inventory-client \
- appc-design-services \
- appc-interfaces-service"
-
-
-if $ENABLE_ODL_CLUSTER
-  then
-    echo "Enabling core APP-C features with clustering enabled"
-    featureInstall odl-netconf-connector-all
-    featureInstall odl-restconf-noauth
-    featureInstall odl-netconf-clustered-topology
-  else
-    echo "Enabling core APP-C features with clustering disabled"
-    featureInstall odl-netconf-connector-all
-    featureInstall odl-restconf-noauth
-    featureInstall odl-netconf-topology
-fi
-
-sleep 7s
-echo "Installing APP-C Features"
-echo ""
-
-for feature in ${APPC_FEATURES_UNZIP}
-do
-  if [ -f ${APPC_FEATURE_DIR}/${feature}/install-feature.sh ]
-  then
-    ${APPC_FEATURE_DIR}/${feature}/install-feature.sh
-  else
-    echo "No installer found for feature ${feature}"
-  fi
-done
-
-#${ODL_HOME}/bin/client feature:install appc-metric appc-dmaap-adapter appc-event-listener appc-chef-adapter appc-netconf-adapter appc-rest-adapter appc-lifecycle-management appc-dispatcher appc-provider appc-dg-util appc-dg-shared appc-sdc-listener appc-oam appc-iaas-adapter appc-ansible-adapter appc-sequence-generator appc-config-generator appc-config-data-services appc-config-adaptor appc-config-audit appc-config-encryption-tool appc-config-flow-controller appc-config-params appc-artifact-handler appc-aai-client
-
-for feature in ${APPC_FEATURES_1}
-do
-  echo "Installing ${feature}"
-  start=$(date +%s)
-  ${ODL_HOME}/bin/client "feature:install -r ${feature}"
-  end=$(date +%s)
-  echo "Install of ${feature} took $(expr $end - $start) seconds"
-  sleep 7s
-  echo "Sleep Finished"
-done
-
-  echo "Installing dispatcher features"
-  start=$(date +%s)
-  ${ODL_HOME}/bin/client "feature:install -r onap-appc-request-handler onap-appc-command-executor onap-appc-lifecycle-management onap-appc-workflow-management lock-manager onap-appc-provider"
-  end=$(date +%s)
-  echo "Install of dispatcher features took $(expr $end - $start) seconds"
-  sleep 7s
-  echo "Sleep Finished"
-
-for feature in ${APPC_FEATURES_2}
-do
-  echo "Installing ${feature}"
-  start=$(date +%s)
-  ${ODL_HOME}/bin/client "feature:install -r ${feature}"
-  end=$(date +%s)
-  echo "Install of ${feature} took $(expr $end - $start) seconds"
-  sleep 7s
-  echo "Sleep Finished"
-done
-
index ed35de8..ad135f8 100755 (executable)
@@ -132,8 +132,7 @@ then
 
         if $ENABLE_ODL_CLUSTER
         then
-                echo "Installing Opendaylight cluster features"
-                ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering
+                echo "Enabling Opendaylight cluster features"
                 enable_odl_cluster
         fi
 
index 0e8b71c..e7399f6 100644 (file)
@@ -19,7 +19,7 @@
 ###
 #hostname=localhost
 
-cadi_loglevel=INFO
+cadi_loglevel=DEBUG
 cadi_bath_convert=/opt/onap/appc/data/properties/bath_config.csv
 
 ############################################################
@@ -48,11 +48,11 @@ cadi_longitude=-122.26147
 aaf_locate_url=https://aaf-locate.{{.Release.Namespace}}:8095
 
 # AAF URL
-aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.0
+aaf_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.service:2.1
 
 # AAF Environment Designation
 aaf_env=DEV
 
 # OAuth2 Endpoints
-aaf_oauth2_token_url=https://AAF_LOCATE_URL/AAF_NS.token:2.0/token
-aaf_oauth2_introspect_url=https://AAF_LOCATE_URL/AAF_NS.introspect:2.0/introspect
+aaf_oauth2_token_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.token:2.1/token
+aaf_oauth2_introspect_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.introspect:2.1/introspect
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh
deleted file mode 100755 (executable)
index 231fd0a..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/bash
-
-###
-# ============LICENSE_START=======================================================
-# openECOMP : SDN-C
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights
-#                                                       reserved.
-# Modifications Copyright © 2018 Amdocs,Bell Canada
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-###
-
-
-# Install SDN-C platform components if not already installed and start container
-
-ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
-ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
-SLEEP_TIME=${SLEEP_TIME:-120}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.mariadbRootPassword}}}
-
-#
-# Wait for database
-#
-echo "Waiting for mariadbgalera"
-until mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p{{.Values.config.mariadbRootPassword}} mysql &> /dev/null
-do
-  printf "."
-  sleep 1
-done
-echo -e "\nmariadbgalera ready"
-
-if [ ! -f ${SDNC_HOME}/.installed ]
-then
-        echo "Installing SDN-C database"
-        ${SDNC_HOME}/bin/installSdncDb.sh
-        echo "Starting OpenDaylight"
-        ${ODL_HOME}/bin/start
-        echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
-        sleep ${SLEEP_TIME}
-        echo "Installing SDN-C platform features"
-        ${SDNC_HOME}/bin/installFeatures.sh
-        if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
-        then
-                echo "Installing directed graphs"
-                ${SDNC_HOME}/svclogic/bin/install.sh
-        fi
-
-
-        echo "Restarting OpenDaylight"
-        ${ODL_HOME}/bin/stop
-        echo "Installed at `date`" > ${SDNC_HOME}/.installed
-fi
-
-exec ${ODL_HOME}/bin/karaf
-
index 32938cc..fdd31a4 100644 (file)
@@ -41,7 +41,7 @@ spec:
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
-      name: "{{ .Values.service.portName }}-8282"
+      name: "{{ .Values.service.portName }}-8443"
     - port: {{ .Values.service.externalPort2 }}
       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
       name: "{{ .Values.service.portName }}-1830"
@@ -52,7 +52,7 @@ spec:
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
-      name: {{ .Values.service.portName }}-8282
+      name: {{ .Values.service.portName }}-8443
     - port: {{ .Values.service.externalPort2 }}
       targetPort: {{ .Values.service.internalPort2 }}
       name: {{ .Values.service.portName }}-1830
index 6677516..4fded9a 100644 (file)
@@ -32,10 +32,9 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
-      imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
       initContainers:
-      - command:
+      - name: {{ include "common.name" . }}-readiness
+        command:
         - /root/ready.py
         args:
         - --container-name
@@ -48,7 +47,12 @@ spec:
               fieldPath: metadata.namespace
         image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-        name: {{ include "common.name" . }}-readiness
+      - name: {{ include "common.name" . }}-chown
+        image: "busybox"
+        command: ["sh", "-c", "chown -R {{ .Values.config.odlUid }}:{{ .Values.config.odlGid}} {{ .Values.persistence.mdsalPath }}"]
+        volumeMounts:
+          - mountPath: {{ .Values.persistence.mdsalPath }}
+            name: {{ include "common.fullname" . }}-data
       containers:
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -116,9 +120,6 @@ spec:
           - mountPath: /opt/onap/appc/bin/installAppcDb.sh
             name: onap-appc-bin
             subPath: installAppcDb.sh
-          - mountPath: /opt/onap/appc/bin/installFeatures.sh
-            name: onap-appc-bin
-            subPath: installFeatures.sh
           - mountPath: /opt/onap/appc/bin/health_check.sh
             name: onap-appc-bin
             subPath: health_check.sh
@@ -137,9 +138,6 @@ spec:
           - mountPath: /opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh
             name: onap-sdnc-svclogic-bin
             subPath: showActiveGraphs.sh
-          - mountPath: /opt/onap/ccsdk/bin/startODL.sh
-            name: onap-sdnc-bin
-            subPath: startODL.sh
           - mountPath: /opt/onap/ccsdk/bin/installSdncDb.sh
             name: onap-sdnc-bin
             subPath: installSdncDb.sh
index a19b67d..578dbc7 100644 (file)
@@ -39,6 +39,8 @@ debugEnabled: false
 
 # application configuration
 config:
+  odlUid: 100
+  odlGid: 101
   ansibleServiceName: appc-ansible-server
   ansiblePort: 8000
   mariadbRootPassword: secretpassword
@@ -118,9 +120,9 @@ service:
   name: appc
   portName: appc
   #targetPort
-  internalPort: 8181
+  internalPort: 8443
   #port
-  externalPort: 8282
+  externalPort: 8443
   nodePort: 30
 
   externalPort2: 1830
index acf35d4..f96054f 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Controller Design Studio (CDS)
 name: cds
-version: 4.0.0
+version: 5.0.0
index 0563675..2bd381e 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP CDS Blueprints Processor
 name: cds-blueprints-processor
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 9f92507..e2f56f5 100755 (executable)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
diff --git a/kubernetes/cds/charts/cds-blueprints-processor/resources/config/ONAP_RootCA.cer b/kubernetes/cds/charts/cds-blueprints-processor/resources/config/ONAP_RootCA.cer
new file mode 100755 (executable)
index 0000000..e9a50d7
--- /dev/null
@@ -0,0 +1,31 @@
+-----BEGIN CERTIFICATE-----
+MIIFPjCCAyagAwIBAgIJAJ6u7cCnzrWdMA0GCSqGSIb3DQEBCwUAMCwxDjAMBgNV
+BAsMBU9TQUFGMQ0wCwYDVQQKDARPTkFQMQswCQYDVQQGEwJVUzAeFw0xODA0MDUx
+NDE1MjhaFw0zODAzMzExNDE1MjhaMCwxDjAMBgNVBAsMBU9TQUFGMQ0wCwYDVQQK
+DARPTkFQMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
+ggIBAMA5pkgRs7NhGG4ew5JouhyYakgYUyFaG121+/h8qbSdt0hVQv56+EA41Yq7
+XGie7RYDQK9NmAFF3gruE+6X7wvJiChp+Cyd7sFMnb65uWhxEdxWTM2BJFrgfzUn
+H8ZCxgaCo3XH4PzlKRy2LQQJEJECwl/RZmRCXijMt5e9h8XoZY/fKkKcZZUsWNCM
+pTo266wjvA9MXLmdgReRj0+vrCjrNqy+htwJDztoiHWiYPqT6o8EvGcgjNqjlZx7
+NUNf8MfLDByqKF6+wRbHv1GKjn3/Vijd45Fv8riyRYROiFanvbV6jIfBkv8PZbXg
+2VDWsYsgp8NAvMxK+iV8cO+Ck3lBI2GOPZbCEqpPVTYbLUz6sczAlCXwQoPzDIZY
+wYa3eR/gYLY1gP2iEVHORag3bLPap9ZX5E8DZkzTNTjovvLk8KaCmfcaUMJsBtDd
+ApcUitz10cnRyZc1sX3gE1f3DpzQM6t9C5sOVyRhDcSrKqqwb9m0Ss04XAS9FsqM
+P3UWYQyqDXSxlUAYaX892u8mV1hxnt2gjb22RloXMM6TovM3sSrJS0wH+l1nznd6
+aFXftS/G4ZVIVZ/LfT1is4StoyPWZCwwwly1z8qJQ/zhip5NgZTxQw4mi7ww35DY
+PdAQOCoajfSvFjqslQ/cPRi/MRCu079heVb5fQnnzVtnpFQRAgMBAAGjYzBhMB0G
+A1UdDgQWBBRTVTPyS+vQUbHBeJrBKDF77+rtSTAfBgNVHSMEGDAWgBRTVTPyS+vQ
+UbHBeJrBKDF77+rtSTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAN
+BgkqhkiG9w0BAQsFAAOCAgEAPx/IaK94n02wPxpnYTy+LVLIxwdq/kawNd6IbiMz
+L87zmNMDmHcGbfoRCj8OkhuggX9Lx1/CkhpXimuYsZOFQi5blr/u+v4mIbsgbmi9
+7j+cUHDP0zLycvSvxKHty51LwmaX9a4wkJl5zBU4O1sd/H9tWcEmwJ39ltKoBKBx
+c94Zc3iMm5ytRWGj+0rKzLDAXEWpoZ5bE5PLJauA6UDCxDLfs3FwhbS7uDggxYvf
+jySF5FCNET94oJ+m8s7VeHvoa8iPGKvXrIqdd7XDHnqJJlVKr7m9S0fMbyEB8ci2
+RtOXDt93ifY1uhoEtEykn4dqBSp8ezvNMnwoXdYPDvTd9uCAFeWFLVreBAWxd25h
+PsBTkZA5hpa/rA+mKv6Af4VBViYr8cz4dZCsFChuioVebe9ighrfjB//qKepFjPF
+CyjzKN1u0JKm/2x/ORqxkTONG8p3uDwoIOyimUcTtTMv42bfYD88RKakqSFXE9G+
+Z0LlaKABqfjK49o/tsAp+c5LoNlYllKhnetO3QAdraHwdmC36BhoghzR1jpX751A
+cZn2VH3Q4XKyp01cJNCJIrua+A+bx6zh3RyW6zIIkbRCbET+UD+4mr8WIcSE3mtR
+ZVlnhUDO4z9//WKMVzwS9Rh8/kuszrGFI1KQozXCHLrce3YP6RYZfOed79LXaRwX
+dYY=
+-----END CERTIFICATE-----
index 1317300..6cb952f 100755 (executable)
 #  limitations under the License.
 #
 # Web server config
+### START -Controller Blueprints Properties
+# Load Resource Source Mappings
+resourceSourceMappings=processor-db=source-db,input=source-input,default=source-default,config-data=source-rest,aai-data=source-rest,capability=source-capability
+
+# Controller Blueprints Core Configuration
+controllerblueprints.blueprintDeployPath=/opt/app/onap/blueprints/deploy
+controllerblueprints.blueprintArchivePath=/opt/app/onap/blueprints/archive
+controllerblueprints.blueprintWorkingPath=/opt/app/onap/blueprints/working
+
+# Controller Blueprint Load Configurations
+# blueprints.load.initial-data may be overridden by ENV variables
+controllerblueprints.loadInitialData=true
+controllerblueprints.loadBluePrint=true
+controllerblueprints.loadBluePrintPaths=/opt/app/onap/model-catalog/blueprint-model/service-blueprint
+controllerblueprints.loadModelType=true
+controllerblueprints.loadModeTypePaths=/opt/app/onap/model-catalog/definition-type/starter-type
+controllerblueprints.loadResourceDictionary=true
+controllerblueprints.loadResourceDictionaryPaths=/opt/app/onap/model-catalog/resource-dictionary/starter-dictionary
+
+# CBA file extension
+controllerblueprints.loadCbaExtension=zip
+
+### END -Controller Blueprints Properties
+
 blueprintsprocessor.grpcEnable=true
 blueprintsprocessor.httpPort=8080
 blueprintsprocessor.grpcPort=9111
@@ -24,14 +48,14 @@ blueprintsprocessor.blueprintArchivePath=/opt/app/onap/blueprints/archive
 blueprintsprocessor.blueprintWorkingPath=/opt/app/onap/blueprints/work
 
 # Primary Database Configuration
-blueprintsprocessor.db.primary.url=jdbc:mysql://cds-db:3306/sdnctl
-blueprintsprocessor.db.primary.username=sdnctl
-blueprintsprocessor.db.primary.password=sdnctl
-blueprintsprocessor.db.primary.driverClassName=org.mariadb.jdbc.Driver
-blueprintsprocessor.db.primary.hibernateHbm2ddlAuto=update
-blueprintsprocessor.db.primary.hibernateDDLAuto=update
-blueprintsprocessor.db.primary.hibernateNamingStrategy=org.hibernate.cfg.ImprovedNamingStrategy
-blueprintsprocessor.db.primary.hibernateDialect=org.hibernate.dialect.MySQL5InnoDBDialect
+blueprintsprocessor.db.url=jdbc:mysql://db:3306/sdnctl
+blueprintsprocessor.db.username=sdnctl
+blueprintsprocessor.db.password=sdnctl
+blueprintsprocessor.db.driverClassName=org.mariadb.jdbc.Driver
+blueprintsprocessor.db.hibernateHbm2ddlAuto=update
+blueprintsprocessor.db.hibernateDDLAuto=update
+blueprintsprocessor.db.hibernateNamingStrategy=org.hibernate.cfg.ImprovedNamingStrategy
+blueprintsprocessor.db.hibernateDialect=org.hibernate.dialect.MySQL5InnoDBDialect
 
 # Python executor
 blueprints.processor.functions.python.executor.executionPath=/opt/app/onap/scripts/jython/ccsdk_blueprints
@@ -59,15 +83,27 @@ blueprintsprocessor.grpcclient.remote-python.host=cds-command-executor
 blueprintsprocessor.grpcclient.remote-python.port=50051
 blueprintsprocessor.grpcclient.remote-python.token=Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
 
-# Primary Config Data REST client settings
-blueprintsprocessor.restclient.primary-config-data.type=basic-auth
-blueprintsprocessor.restclient.primary-config-data.url=http://sdnc:8282
-blueprintsprocessor.restclient.primary-config-data.username=admin
-blueprintsprocessor.restclient.primary-config-data.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-
-# Primary AAI Data REST Client settings
-blueprintsprocessor.restclient.primary-aai-data.type=basic-auth
-blueprintsprocessor.restclient.primary-aai-data.url=https://aai.onap:8443
-blueprintsprocessor.restclient.primary-aai-data.username=aai@aai.onap.org
-blueprintsprocessor.restclient.primary-aai-data.password=demo123456!
+# Config Data REST client settings
+blueprintsprocessor.restclient.config-data.type=basic-auth
+blueprintsprocessor.restclient.config-data.url=http://sdnc:8282
+blueprintsprocessor.restclient.config-data.username=admin
+blueprintsprocessor.restclient.config-data.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# AAI Data REST Client settings
+blueprintsprocessor.restclient.aai-data.type=basic-auth
+blueprintsprocessor.restclient.aai-data.url=https://aai.onap:8443
+blueprintsprocessor.restclient.aai-data.username=aai@aai.onap.org
+blueprintsprocessor.restclient.aai-data.password=demo123456!
+
+# Kafka-message-lib Configuration
+blueprintsprocessor.messageclient.self-service-api.topic=cds-producer
+blueprintsprocessor.messageclient.self-service-api.type=kafka-basic-auth
+
+##ONAP Message Router Kafka Service##
+blueprintsprocessor.messageclient.self-service-api.bootstrapServers=message-router-kafka:9092
+
+blueprintsprocessor.messageclient.self-service-api.consumerTopic=cds-consumer
+blueprintsprocessor.messageclient.self-service-api.groupId=cds-consumer-group
+blueprintsprocessor.messageclient.self-service-api.clientId=cds-client
+blueprintsprocessor.messageclient.self-service-api.kafkaEnable=false
 
index 736b5ce..ef7d8d4 100755 (executable)
@@ -36,6 +36,10 @@ spec:
         args:
         - --container-name
         - cds-db
+        {{- if .Values.dmaapEnabled  }}
+        - --container-name
+        - message-router
+        {{ end }}
         env:
         - name: NAMESPACE
           valueFrom:
@@ -60,7 +64,7 @@ spec:
           {{ if .Values.liveness.enabled }}
           livenessProbe:
             httpGet:
-              path: /api/v1/execution-service/ping
+              path: /api/v1/execution-service/health-check
               port: {{ .Values.service.http.internalPort }}
               httpHeaders:
               - name: Authorization
@@ -70,7 +74,7 @@ spec:
           {{ end }}
           readinessProbe:
             httpGet:
-              path: /api/v1/execution-service/ping
+              path: /api/v1/execution-service/health-check
               port: {{ .Values.service.http.internalPort }}
               httpHeaders:
               - name: Authorization
@@ -87,6 +91,11 @@ spec:
           - mountPath: {{ .Values.config.appConfigDir }}/logback.xml
             name: {{ include "common.fullname" . }}-config
             subPath: logback.xml
+
+          - mountPath: {{ .Values.config.appConfigDir }}/ONAP_RootCA.cer
+            name: {{ include "common.fullname" . }}-config
+            subPath: ONAP_RootCA.cer
+
           - mountPath: {{ .Values.persistence.deployedBlueprint }}
             name: {{ include "common.fullname" . }}-blueprints
           resources:
index a2e3da6..29eeb19 100755 (executable)
@@ -40,7 +40,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-blueprintsprocessor:0.4.5
+image: onap/ccsdk-blueprintsprocessor:0.6.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -57,6 +57,10 @@ nodeSelector: {}
 
 affinity: {}
 
+# flag for kafka-listener dependency. Set to true if you are using message-router otherwise set to false if you are using
+# custom kafka cluster.
+dmaapEnabled: true
+
 # probe configuration parameters
 liveness:
   initialDelaySeconds: 120
@@ -82,7 +86,6 @@ service:
     internalPort: 9111
     externalPort: 9111
 
-
 persistence:
   volumeReclaimPolicy: Retain
   accessMode: ReadWriteMany
index 6f17c88..3b6bb99 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP CDS Command Executor
 name: cds-command-executor
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index a57d2b6..d7301b6 100755 (executable)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 14432ec..a04651d 100755 (executable)
@@ -40,7 +40,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-commandexecutor:0.4.5
+image: onap/ccsdk-commandexecutor:0.6.0
 pullPolicy: Always
 
 # application configuration
index fa04a16..45776ca 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP CDS Controller Blueprints
 name: cds-controller-blueprints
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 857a963..35b3420 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index ebc1d2e..1b38665 100755 (executable)
@@ -44,7 +44,7 @@ spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.ImprovedNamingStrategy
 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
 
 # Load Resource Source Mappings
-resourceSourceMappings=processor-db=source-processor-db,primary-db=source-processor-db,input=source-input,default=source-default,primary-config-data=source-rest,primary-aai-data=source-rest,capability=source-capability
+resourceSourceMappings=processor-db=source-db,input=source-input,default=source-default,config-data=source-rest,aai-data=source-rest,capability=source-capability
 
 # Controller Blueprints Core Configuration
 controllerblueprints.blueprintDeployPath=/etc/blueprints/deploy
@@ -64,4 +64,4 @@ controllerblueprints.loadResourceDictionaryPaths=/opt/app/onap/model-catalog/res
 controllerblueprints.loadCbaExtension=zip
 
 # Web server config
-server.port=8080
\ No newline at end of file
+server.port=8080
index b629c51..06efd74 100755 (executable)
@@ -38,7 +38,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-controllerblueprints:0.4.5
+image: onap/ccsdk-controllerblueprints:0.6.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 4385de1..e00a959 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP CDS SDC listener microservice
 name: cds-sdc-listener
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index a57d2b6..d7301b6 100755 (executable)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index cd2fbf5..f359b97 100644 (file)
@@ -37,7 +37,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-sdclistener:0.4.5
+image: onap/ccsdk-sdclistener:0.6.0
 name: sdc-listener
 pullPolicy: Always
 
index d168e7c..3eb310a 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP CDS UI
 name: cds-ui
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index a57d2b6..d7301b6 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index ead1b2e..562cd54 100644 (file)
@@ -50,14 +50,22 @@ spec:
           env:
             - name: HOST
               value: 0.0.0.0
-            - name: API_BLUEPRINT_CONTROLLER_BASE_URL
-              value: {{ .Values.config.api.controller.baseUrl }}
-            - name: API_BLUEPRINT_CONTROLLER_AUTH_TOKEN
-              value: {{ .Values.config.api.controller.authToken }}
-            - name: API_BLUEPRINT_PROCESSOR_BASE_URL
-              value: {{ .Values.config.api.processor.baseUrl }}
-            - name: API_BLUEPRINT_PROCESSOR_AUTH_TOKEN
-              value: {{ .Values.config.api.processor.authToken }}
+            - name: APP_ACTION_DEPLOY_BLUEPRINT_GRPC_ENABLED
+              value: "{{ .Values.config.app.action.deployBlueprint.grpcEnabled }}"
+            - name: API_BLUEPRINT_CONTROLLER_HTTP_BASE_URL
+              value: {{ .Values.config.api.controller.http.baseUrl }}
+            - name: API_BLUEPRINT_CONTROLLER_HTTP_AUTH_TOKEN
+              value: {{ .Values.config.api.controller.http.authToken }}
+            - name: API_BLUEPRINT_PROCESSOR_HHTP_BASE_URL
+              value: {{ .Values.config.api.processor.http.baseUrl }}
+            - name: API_BLUEPRINT_PROCESSOR_HTTP_AUTH_TOKEN
+              value: {{ .Values.config.api.processor.http.authToken }}
+            - name: API_BLUEPRINT_PROCESSOR_GRPC_HOST
+              value: {{ .Values.config.api.processor.grpc.host }}
+            - name: API_BLUEPRINT_PROCESSOR_GRPC_PORT
+              value: "{{ .Values.config.api.processor.grpc.port }}"
+            - name: API_BLUEPRINT_PROCESSOR_GRPC_AUTH_TOKEN
+              value: {{ .Values.config.api.processor.grpc.authToken }}
           readinessProbe:
             tcpSocket:
               port: {{ .Values.service.internalPort }}
index 036b888..064f8cb 100644 (file)
@@ -28,18 +28,28 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-cds-ui-server:0.4.5
+image: onap/ccsdk-cds-ui-server:0.6.0
 pullPolicy: Always
 
 # application configuration
 config:
+  app:
+    action:
+      deployBlueprint:
+        grpcEnabled: true
   api:
     controller:
-      baseUrl: http://cds-controller-blueprints:8080/api/v1
-      authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
+      http:
+       baseUrl: http://cds-controller-blueprints:8080/api/v1
+       authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
     processor:
-      baseUrl: http://cds-blueprints-processor-http:8080/api/v1
-      authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
+      http:
+       baseUrl: http://cds-blueprints-processor-http:8080/api/v1
+       authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
+      grpc:
+        host: cds-blueprints-processor-grpc
+        port: 9111
+        authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
 
 # default number of instances
 replicaCount: 1
index 51a4e3f..d6975c4 100644 (file)
@@ -15,8 +15,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index dc04da7..54f2df1 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Clamp
 name: clamp
-version: 4.0.0
+version: 5.0.0
index 23367ab..c43b7f3 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Clamp Dashboard Elasticsearch
 name: clamp-dash-es
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index f25e40b..f385128 100644 (file)
@@ -31,8 +31,8 @@ busyboxRepository: registry.hub.docker.com
 busyboxImage: library/busybox:latest
 
 # application image
-loggingRepository: docker.elastic.co
-image: elasticsearch/elasticsearch-oss:6.6.2
+repository: nexus3.onap.org:10001
+image: onap/clamp-dashboard-elasticsearch:4.1.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 0a00ba0..954eebc 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Clamp Dashboard Kibana
 name: clamp-dash-kibana
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index a94413c..2173039 100644 (file)
@@ -125,3 +125,11 @@ server.ssl.key: {{.Values.config.sslPemkeyFilePath}}
 # The default locale. This locale can be used in certain circumstances to substitute any missing
 # translations.
 #i18n.defaultLocale: "en"
+
+## Search Guard
+#
+xpack.security.enabled: false
+elasticsearch.username: {{.Values.config.elasticUSR}}
+elasticsearch.password: {{.Values.config.elasticPWD}}
+
+searchguard.cookie.password: 123567818187654rwrwfsfshdhdhtegdhfzftdhncn
index 954de3a..276ac5d 100644 (file)
@@ -34,7 +34,7 @@ busyboxImage: library/busybox:latest
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-kibana:4.0.5
+image: onap/clamp-dashboard-kibana:4.1.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -44,6 +44,8 @@ debugEnabled: false
 config:
   elasticsearchServiceName: cdash-es
   elasticsearchPort: 9200
+  elasticUSR: kibanaserver
+  elasticPWD: kibanaserver
   sslEnabled: true
   sslPemCertFilePath: /usr/share/kibana/config/keystore/org.onap.clamp.crt.pem
   sslPemkeyFilePath: /usr/share/kibana/config/keystore/org.onap.clamp.key.pem
index 4c7c84d..4960a70 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Clamp Dashboard Logstash
 name: clamp-dash-logstash
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index b4b5071..05d8085 100644 (file)
@@ -219,6 +219,8 @@ output {
         elasticsearch {
             codec => "json"
             hosts => ["${elasticsearch_base_url}"]
+            user => ["${logstash_user}"]
+            password => ["${logstash_pwd}"]
             index => "errors-%{+YYYY.MM.DD}"
             doc_as_upsert => true
         }
@@ -227,6 +229,8 @@ output {
         elasticsearch {
             codec => "json"
             hosts => ["${elasticsearch_base_url}"]
+            user => ["${logstash_user}"]
+            password => ["${logstash_pwd}"]
             document_id => "%{requestID}"
             index => "events-cl-%{+YYYY.MM.DD}" # creates daily indexes for control loop
             doc_as_upsert => true
@@ -237,6 +241,8 @@ output {
         elasticsearch {
             codec => "json"
             hosts => ["${elasticsearch_base_url}"]
+            user => ["${logstash_user}"]
+            password => ["${logstash_pwd}"]
             index => "events-%{+YYYY.MM.DD}" # creates daily indexes
             doc_as_upsert => true
         }
index 6c6331a..a72f6b6 100644 (file)
@@ -63,6 +63,10 @@ spec:
             value: "{{ .Values.config.requestTopic }}"
           - name: dmaap_base_url
             value: {{ .Values.config.dmaapScheme }}://{{ .Values.config.dmaapHost }}.{{ include "common.namespace" . }}:{{ .Values.config.dmaapPort }}
+          - name: logstash_user
+            value: "{{ .Values.config.logstash_user }}"
+          - name: logstash_pwd
+            value: "{{ .Values.config.logstash_pwd }}"
           - name: elasticsearch_base_url
             value: "http://{{.Values.config.elasticsearchServiceName}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.config.elasticsearchPort}}"
           ports:
index 893860b..e7ab68f 100644 (file)
@@ -30,7 +30,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-logstash:4.0.5
+image: onap/clamp-dashboard-logstash:4.1.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -48,6 +48,8 @@ config:
   eventTopic: "DCAE-CL-EVENT"
   notificationTopic: "POLICY-CL-MGT"
   requestTopic: "APPC-CL"
+  logstash_user: "logstash"
+  logstash_pwd: "logstash"
 
 # default number of instances
 replicaCount: 1
index 7418361..ef12d23 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: MariaDB Service
 name: mariadb
-version: 4.0.0
+version: 5.0.0
index 581f4a0..5d9b191 100644 (file)
@@ -28,7 +28,7 @@ spec:
   ports:
     {{if eq .Values.service.type "NodePort" -}}
     - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 398c9ea..0304604 100644 (file)
@@ -30,7 +30,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp:4.0.5
+image: onap/clamp:4.1.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -54,7 +54,7 @@ config:
         "clamp.config.sdc.serviceUsername": "clamp",
         "clamp.config.sdc.servicePassword": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
         "clamp.config.files.sdcController": "file:/opt/clamp/sdc-controllers-config.json",
-        "clamp.config.dcae.inventory.url": "http://inventory.{{ include "common.namespace" . }}:8080",
+        "clamp.config.dcae.inventory.url": "https://inventory.{{ include "common.namespace" . }}:8080",
         "clamp.config.dcae.dispatcher.url": "https4://deployment-handler.{{ include "common.namespace" . }}:8443",
         "clamp.config.dcae.deployment.url": "https4://deployment-handler.{{ include "common.namespace" . }}:8443",
         "clamp.config.dcae.deployment.userName": "none",
index d3a1927..8c1f491 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Command Line Interface
 name: cli
-version: 4.0.0
+version: 5.0.0
index 9996777..6a748be 100644 (file)
@@ -14,7 +14,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 25cfebf..29688cd 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP cassandra
 name: cassandra
-version: 4.0.0
+version: 5.0.0
index 645b41b..8c1b197 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 201b0d5..f4cca48 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Common templates for inclusion in other charts
 name: common
-version: 4.0.0
+version: 5.0.0
diff --git a/kubernetes/common/common/templates/_ingress.tpl b/kubernetes/common/common/templates/_ingress.tpl
new file mode 100644 (file)
index 0000000..9b274ad
--- /dev/null
@@ -0,0 +1,55 @@
+{{- define "ingress.config.port" -}}
+{{- if .Values.ingress -}}
+{{- if .Values.ingress.service -}}
+{{- range .Values.ingress.service }}
+        - path: {{ .path }}
+          backend:
+            serviceName: {{ .name }}
+            servicePort: {{ .port }}
+{{- end }}
+{{- else -}}
+         - path: {{ printf "/%s" .Chart.Name }}
+           backend:
+             serviceName: {{ .Chart.Name }}
+             servicePort: {{ .Values.service.externalPort }}
+{{- end -}}
+{{- end -}}
+{{- end -}}
+
+
+{{- define "ingress.config.annotations" -}}
+{{- if .Values.ingress -}}
+{{- if .Values.ingress.annotations -}}
+{{ toYaml .Values.ingress.annotations | indent 4 | trim }}
+{{- end -}}
+{{- end -}}
+{{- end -}}
+
+
+{{- define "common.ingress" -}}
+{{- if .Values.ingress -}}
+{{- if .Values.ingress.enabled -}}
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+  name: {{ include "common.fullname" . }}-ingress
+  annotations:
+    {{ include "ingress.config.annotations" . }}
+  labels:
+    app: {{ .Chart.Name }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  rules:
+  - http:
+      paths:
+         {{- include "ingress.config.port" . }}
+{{- if .Values.ingress.tls }}
+  tls:
+{{ toYaml .Values.ingress.tls | indent 4 }}
+  {{- end -}}
+{{- end -}}
+{{- end -}}
+{{- end -}}
+
index edcd2e9..2063cb3 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: D.G. Builder application
 name: dgbuilder
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 4a81e88..3ec7ed7 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 4094801..df52fbc 100644 (file)
@@ -47,7 +47,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-dgbuilder-image:0.4.4
+image: onap/ccsdk-dgbuilder-image:0.6.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 31a8ad5..a01524c 100644 (file)
@@ -14,7 +14,7 @@
  
 name: etcd
 home: https://github.com/coreos/etcd
-version: 4.0.0
+version: 5.0.0
 appVersion: 2.2.5
 description: Distributed reliable key-value store for the most critical data of a
   distributed system.
index 0ddbcbe..29a3835 100644 (file)
@@ -14,5 +14,5 @@
 # limitations under the License
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 64ba32d..1688e0e 100644 (file)
@@ -15,7 +15,7 @@
 apiVersion: v1
 description: Chart for MariaDB Galera cluster
 name: mariadb-galera
-version: 4.0.0
+version: 5.0.0
 keywords:
   - mariadb
   - mysql
index f01f533..d323dda 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: 'file://../common'
\ No newline at end of file
index 98c9cf8..f08a53b 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: MongoDB Server
 name: mongo
-version: 4.0.0
+version: 5.0.0
index 71fbbc5..79d7de4 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 3b08fb0..db8962c 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: MUSIC - Multi-site State Coordination Service
 name: music
-version: 4.0.0
+version: 5.0.0
index 1cf5470..0a8cf35 100644 (file)
@@ -15,5 +15,5 @@
 apiVersion: v1
 description: Cassandra Job - Run CQL Scripts after Cassandra Starts.
 name: music-cassandra-job
-version: 4.0.0
+version: 5.0.0
 
index da15d33..b94527f 100644 (file)
@@ -15,5 +15,5 @@
 apiVersion: v1
 description: ONAP - Cassandra Database
 name: music-cassandra
-version: 4.0.0
+version: 5.0.0
 
index cee64a5..7619223 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index ef9e966..207f9dc 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP - MUSIC Tomcat Container
 name: music-tomcat
-version: 4.0.0
+version: 5.0.0
index 8b30624..a3dabc0 100755 (executable)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index fae2fe2..ad039c2 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 1ff737d..7f27229 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: MySQL Server
 name: mysql
-version: 4.0.0
+version: 5.0.0
index 71fbbc5..79d7de4 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 4b7690b..4ba7de9 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1\r
 description: Name Generation Micro Service\r
 name: network-name-gen\r
-version: 4.0.0\r
+version: 5.0.0\r
index 31fe2fd..9ef8db8 100644 (file)
@@ -14,8 +14,8 @@
 \r
 dependencies:\r
   - name: common\r
-    version: ~4.x-0\r
+    version: ~5.x-0\r
     repository: '@local'\r
   - name: mariadb-galera\r
-    version: ~4.x-0\r
+    version: ~5.x-0\r
     repository: file://../mariadb-galera/\r
index fcb69b3..ad16ed7 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: NFS provisioner
 name: nfs-provisioner
-version: 4.0.0
+version: 5.0.0
index d175386..542c262 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 2de3b42..b16a55a 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Postgres Server
 name: postgres
-version: 4.0.0
+version: 5.0.0
index 7807d5b..e281813 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Postgres Server
 name: pgpool
-version: 4.0.0
+version: 5.0.0
index 27f4c40..5b097f3 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 27f4c40..5b097f3 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 1bbeea9..33b1891 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Consul Agent
 name: consul
-version: 4.0.0
+version: 5.0.0
index f8244f0..c80364a 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Consul Server
 name: consul-server
-version: 4.0.0
+version: 5.0.0
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 634b692..703e2bc 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP optional tools
 name: contrib
-version: 4.0.0
+version: 5.0.0
diff --git a/kubernetes/contrib/charts/awx/Chart.yaml b/kubernetes/contrib/charts/awx/Chart.yaml
new file mode 100755 (executable)
index 0000000..90f7380
--- /dev/null
@@ -0,0 +1,20 @@
+# Copyright © 2019 Bell Canada
+#
+# 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: Ansible AWX
+name: awx
+sources:
+  - https://github.com/ansible/awx
+version: 5.0.0
diff --git a/kubernetes/contrib/charts/awx/Makefile b/kubernetes/contrib/charts/awx/Makefile
new file mode 100644 (file)
index 0000000..d8a5033
--- /dev/null
@@ -0,0 +1,16 @@
+# Copyright © 2019 Bell Canada
+#
+# 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.
+
+make-awx:
+       cd charts && helm dep up awx-postgres
old mode 100644 (file)
new mode 100755 (executable)
similarity index 82%
rename from kubernetes/robot/Chart.yaml
rename to kubernetes/contrib/charts/awx/charts/awx-postgres/Chart.yaml
index 6ccc7a3..ae3befc
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -13,6 +13,6 @@
 # limitations under the License.
 
 apiVersion: v1
-description: A helm Chart for kubernetes-ONAP Robot
-name: robot
-version: 4.0.0
+description: Ansible AWX database
+name: awx-postgres
+version: 5.0.0
old mode 100644 (file)
new mode 100755 (executable)
similarity index 64%
rename from kubernetes/robot/templates/NOTES.txt
rename to kubernetes/contrib/charts/awx/charts/awx-postgres/templates/NOTES.txt
index fe7c931..3ab092e
@@ -1,8 +1,16 @@
-# Copyright © 2018 Amdocs, Bell Canada
+# Copyright © 2019 Bell Canada
 #
-# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+# 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
 #
-# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+#       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 }}
@@ -19,7 +27,7 @@
   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={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+  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 }}
old mode 100644 (file)
new mode 100755 (executable)
similarity index 53%
rename from kubernetes/robot/templates/deployment.yaml
rename to kubernetes/contrib/charts/awx/charts/awx-postgres/templates/deployment.yaml
index 7b0c140..3ac0e1a
@@ -1,4 +1,5 @@
-# Copyright © 2018 Amdocs, Bell Canada, AT&T
+{{/*
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,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,59 +34,53 @@ spec:
     spec:
       containers:
       - name: {{ include "common.name" . }}
-        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+        image: {{ .Values.global.repository | default .Values.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 }}
+          exec:
+            command:
+            - /bin/sh
+            - -i
+            - -c
+            - psql -h 127.0.0.1 -U $POSTGRES_USER -q -d {{ .Values.config.postgresDB }}
+              -c 'SELECT 1'
+          initialDelaySeconds: 5
+          timeoutSeconds: 1
+        env:
+          - name: POSTGRES_USER
+            value: "{{ .Values.config.postgresUser }}"
+          - name: POSTGRES_PASSWORD
+            value: "{{ .Values.config.postgresPassword }}"
+          - name: POSTGRES_DB
+            value: "{{ .Values.config.postgresDB }}"
         volumeMounts:
-        - name: dshm
-          mountPath: /dev/shm
-        - name: localtime
-          mountPath: /etc/localtime
+        - mountPath: /etc/localtime
+          name: localtime
           readOnly: true
-        - name: robot-eteshare
-          mountPath: /share/config
-        - name: robot-logs
-          mountPath: /share/logs
+        - name: {{ include "common.fullname" . }}-data
+          mountPath: /var/lib/postgresql/data
         resources:
-{{ include "common.resources" . }}
+{{ include "common.resources" . | indent 12 }}
       {{- if .Values.nodeSelector }}
       nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 8 }}
+{{ toYaml .Values.nodeSelector | indent 10 }}
       {{- end -}}
       {{- if .Values.affinity }}
       affinity:
-{{ toYaml .Values.affinity | indent 8 }}
+{{ toYaml .Values.affinity | indent 10 }}
       {{- end }}
       volumes:
-    {{- if .Values.persistence.enabled }}
-      - name: robot-logs
-        persistentVolumeClaim:
-          claimName: {{ include "common.fullname" . }}
-    {{- else }}
-        emptyDir: {}
-    {{- end }}
-      - name: dshm
-        emptyDir:
-          medium: Memory
-      - name: localtime
-        hostPath:
-          path: /etc/localtime
-      - name: robot-eteshare
-        configMap:
-          name: {{ include "common.fullname" . }}-eteshare-configmap
-          defaultMode: 0755
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+      {{- 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"
old mode 100644 (file)
new mode 100755 (executable)
similarity index 93%
rename from kubernetes/robot/templates/pv.yaml
rename to kubernetes/contrib/charts/awx/charts/awx-postgres/templates/pv.yaml
index 184728f..a8cf9f6
@@ -1,5 +1,5 @@
 {{/*
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,6 +15,7 @@
 */}}
 
 {{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{- if not .Values.persistence.storageClass -}}
 kind: PersistentVolume
 apiVersion: v1
 metadata:
@@ -35,3 +36,4 @@ spec:
   hostPath:
     path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
 {{- end -}}
+{{- end -}}
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
similarity index 91%
rename from kubernetes/robot/templates/pvc.yaml
rename to kubernetes/contrib/charts/awx/charts/awx-postgres/templates/pvc.yaml
index e27c331..52891ff
@@ -1,5 +1,5 @@
 {{/*
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -27,12 +27,14 @@ metadata:
     heritage: "{{ .Release.Service }}"
 {{- if .Values.persistence.annotations }}
   annotations:
-{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{ .Values.persistence.annotations | indent 4 }}
 {{- end }}
 spec:
+{{- if not .Values.persistence.storageClass }}
   selector:
     matchLabels:
       name: {{ include "common.fullname" . }}
+{{- end }}
   accessModes:
     - {{ .Values.persistence.accessMode }}
   resources:
old mode 100644 (file)
new mode 100755 (executable)
similarity index 85%
rename from kubernetes/robot/templates/service.yaml
rename to kubernetes/contrib/charts/awx/charts/awx-postgres/templates/service.yaml
index 3fc21b4..9dffb53
@@ -1,4 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
+{{/*
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,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
@@ -27,13 +29,14 @@ spec:
   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 | default "http" }}
+      name: {{ .Values.service.portName }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
-      name: {{ .Values.service.portName | default "http" }}
+      name: {{ .Values.service.portName }}
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
\ No newline at end of file
+    release: {{ .Release.Name }}
diff --git a/kubernetes/contrib/charts/awx/charts/awx-postgres/values.yaml b/kubernetes/contrib/charts/awx/charts/awx-postgres/values.yaml
new file mode 100755 (executable)
index 0000000..79fe510
--- /dev/null
@@ -0,0 +1,83 @@
+# Copyright © 2019 Bell Canada
+#
+# 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 mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+
+global: # global defaults
+  nodePortPrefixExt: 304
+  persistence: {}
+
+# application image
+repository: docker.io
+image: postgres:10.4-alpine
+pullPolicy: Always
+
+# application configuration
+config:
+  postgresUser: awx
+  postgresPassword: awx
+  postgresDB: awx
+
+ingress:
+  enabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+
+readiness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+  enabled: true
+  volumeReclaimPolicy: Retain
+
+  # Uncomment the storageClass parameter to use an existing PV
+  # that will match the following class.
+  # When uncomment the storageClass, the PV is not created anymore.
+
+  # storageClass: "nfs-dev-sc"
+
+  accessMode: ReadWriteMany
+  size: 1Gi
+
+  # When using storage class, mountPath and mountSubPath are
+  # simply ignored.
+
+  mountPath: /dockerdata-nfs
+  mountSubPath: awx/pgdata
+
+service:
+  type: ClusterIP
+  name: awx-postgresql
+  portName: awx-postgresql
+  internalPort: 5432
+  externalPort: 5432
+
+resources: {}
diff --git a/kubernetes/contrib/charts/awx/charts/awx/Chart.yaml b/kubernetes/contrib/charts/awx/charts/awx/Chart.yaml
new file mode 100755 (executable)
index 0000000..1a34dcd
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2019 Bell Canada
+#
+# 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: Ansible AWX application
+name: awx
+version: 5.0.0
diff --git a/kubernetes/contrib/charts/awx/charts/awx/resources/config/credentials.py b/kubernetes/contrib/charts/awx/charts/awx/resources/config/credentials.py
new file mode 100644 (file)
index 0000000..39350e0
--- /dev/null
@@ -0,0 +1,36 @@
+# Copyright © 2019 Bell Canada
+#
+# 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.
+
+DATABASES = {
+    'default': {
+        'ATOMIC_REQUESTS': True,
+        'ENGINE': 'awx.main.db.profiled_pg',
+        'NAME': "{{ .Values.config.postgresDB }}",
+        'USER': "{{ .Values.config.postgresUser }}",
+        'PASSWORD': "{{ .Values.config.postgresPassword }}",
+        'HOST': "awx-postgresql",
+        'PORT': "5432",
+    }
+}
+BROKER_URL = 'amqp://{}:{}@{}:{}/{}'.format(
+    "{{ .Values.config.rabbitmqUser }}",
+    "{{ .Values.config.rabbitmqPassword }}",
+    "localhost",
+    "5672",
+    "{{ .Values.config.rabbitmqVhost }}")
+CHANNEL_LAYERS = {
+    'default': {'BACKEND': 'asgi_amqp.AMQPChannelLayer',
+                'ROUTING': 'awx.main.routing.channel_routing',
+                'CONFIG': {'url': BROKER_URL}}
+}
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/charts/awx/resources/config/environment.sh b/kubernetes/contrib/charts/awx/charts/awx/resources/config/environment.sh
new file mode 100644 (file)
index 0000000..7c58c6b
--- /dev/null
@@ -0,0 +1,23 @@
+# Copyright © 2019 Bell Canada
+#
+# 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.
+
+DATABASE_USER={{ .Values.config.postgresUser }}
+DATABASE_NAME={{ .Values.config.postgresDB }}
+DATABASE_HOST=awx-postgresql
+DATABASE_PORT=5432
+DATABASE_PASSWORD={{ .Values.config.postgresPassword }}
+MEMCACHED_HOST=localhost
+RABBITMQ_HOST=localhost
+AWX_ADMIN_USER={{ .Values.config.awxAdminUser }}
+AWX_ADMIN_PASSWORD={{ .Values.config.awxAdminPassword }}
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/charts/awx/templates/configmap.yaml b/kubernetes/contrib/charts/awx/charts/awx/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..9bc62b0
--- /dev/null
@@ -0,0 +1,146 @@
+{{/*
+# Copyright © 2019 Bell Canada
+#
+# 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" . }}-init-mgnt
+  namespace: {{ include "common.namespace" . }}
+data:
+  entrypoint: |
+    #/bin/sh
+
+    awx-manage migrate --noinput
+    if [[ `echo 'from django.contrib.auth.models import User; nsu = User.objects.filter(is_superuser=True).count(); exit(0 if nsu > 0 else 1)' | awx-manage shell` > 0 ]]
+    then
+      echo 'from django.contrib.auth.models import User; User.objects.create_superuser('{{ .Values.config.awxAdminUser }}', '{{ .Values.config.awxAdminEmail }}', '{{ .Values.config.awxAdminPassword }}')' | awx-manage shell
+      awx-manage update_password --username='{{ .Values.config.awxAdminUser }}' --password='{{ .Values.config.awxAdminPassword }}'
+    fi
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-settings
+  namespace: {{ include "common.namespace" . }}
+data:
+  awx_settings: |
+    import os
+    import socket
+    ADMINS = ()
+
+    AWX_PROOT_ENABLED = True
+
+    # Automatically deprovision pods that go offline
+    AWX_AUTO_DEPROVISION_INSTANCES = True
+
+    SYSTEM_TASK_ABS_CPU = 6
+    SYSTEM_TASK_ABS_MEM = 20
+
+    INSIGHTS_URL_BASE = "https://example.org"
+
+    #Autoprovisioning should replace this
+    CLUSTER_HOST_ID = socket.gethostname()
+    SYSTEM_UUID = '00000000-0000-0000-0000-000000000000'
+
+    SESSION_COOKIE_SECURE = False
+    CSRF_COOKIE_SECURE = False
+
+    REMOTE_HOST_HEADERS = ['HTTP_X_FORWARDED_FOR']
+
+    STATIC_ROOT = '/var/lib/awx/public/static'
+    PROJECTS_ROOT = '/var/lib/awx/projects'
+    JOBOUTPUT_ROOT = '/var/lib/awx/job_status'
+    SECRET_KEY = open('/etc/tower/SECRET_KEY', 'rb').read().strip()
+    ALLOWED_HOSTS = ['*']
+    INTERNAL_API_URL = 'http://127.0.0.1:8052'
+    SERVER_EMAIL = 'root@localhost'
+    DEFAULT_FROM_EMAIL = 'webmaster@localhost'
+    EMAIL_SUBJECT_PREFIX = '[AWX] '
+    EMAIL_HOST = 'localhost'
+    EMAIL_PORT = 25
+    EMAIL_HOST_USER = ''
+    EMAIL_HOST_PASSWORD = ''
+    EMAIL_USE_TLS = False
+
+    LOGGING['handlers']['console'] = {
+        '()': 'logging.StreamHandler',
+        'level': 'DEBUG',
+        'formatter': 'simple',
+    }
+
+    LOGGING['loggers']['django.request']['handlers'] = ['console']
+    LOGGING['loggers']['rest_framework.request']['handlers'] = ['console']
+    LOGGING['loggers']['awx']['handlers'] = ['console']
+    LOGGING['loggers']['awx.main.commands.run_callback_receiver']['handlers'] = ['console']
+    LOGGING['loggers']['awx.main.commands.inventory_import']['handlers'] = ['console']
+    LOGGING['loggers']['awx.main.tasks']['handlers'] = ['console']
+    LOGGING['loggers']['awx.main.scheduler']['handlers'] = ['console']
+    LOGGING['loggers']['django_auth_ldap']['handlers'] = ['console']
+    LOGGING['loggers']['social']['handlers'] = ['console']
+    LOGGING['loggers']['system_tracking_migrations']['handlers'] = ['console']
+    LOGGING['loggers']['rbac_migrations']['handlers'] = ['console']
+    LOGGING['loggers']['awx.isolated.manager.playbooks']['handlers'] = ['console']
+    LOGGING['handlers']['callback_receiver'] = {'class': 'logging.NullHandler'}
+    LOGGING['handlers']['task_system'] = {'class': 'logging.NullHandler'}
+    LOGGING['handlers']['tower_warnings'] = {'class': 'logging.NullHandler'}
+    LOGGING['handlers']['rbac_migrations'] = {'class': 'logging.NullHandler'}
+    LOGGING['handlers']['system_tracking_migrations'] = {'class': 'logging.NullHandler'}
+    LOGGING['handlers']['management_playbooks'] = {'class': 'logging.NullHandler'}
+
+    CACHES = {
+        'default': {
+            'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
+            'LOCATION': '{}:{}'.format("localhost", "11211")
+        },
+        'ephemeral': {
+            'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
+        },
+    }
+
+    USE_X_FORWARDED_PORT = True
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-rabbitmq
+  namespace: {{ include "common.namespace" . }}
+data:
+  enabled_plugins: |
+    [rabbitmq_management,rabbitmq_peer_discovery_k8s].
+  rabbitmq.conf: |
+    ## Clustering
+    management.load_definitions = /etc/rabbitmq/rabbitmq_definitions.json
+    cluster_formation.peer_discovery_backend  = rabbit_peer_discovery_k8s
+    cluster_formation.k8s.host = kubernetes.default.svc
+    cluster_formation.k8s.address_type = ip
+    cluster_formation.node_cleanup.interval = 10
+    cluster_formation.node_cleanup.only_log_warning = false
+    cluster_partition_handling = autoheal
+    ## queue master locator
+    queue_master_locator=min-masters
+    ## enable guest user
+    loopback_users.guest = false
+  rabbitmq_definitions.json: |
+    {
+      "users":[{"name": "{{ .Values.config.rabbitmqUser }}", "password": "{{ .Values.config.rabbitmqPassword }}", "tags": ""}],
+      "permissions":[
+        {"user":"{{ .Values.config.rabbitmqUser }}","vhost":"{{ .Values.config.rabbitmqVhost }}","configure":".*","write":".*","read":".*"}
+      ],
+      "vhosts":[{"name":"{{ .Values.config.rabbitmqVhost }}"}],
+      "policies":[
+          {"vhost":"{{ .Values.config.rabbitmqVhost }}","name":"ha-all","pattern":".*","definition":{"ha-mode":"all","ha-sync-mode":"automatic"}}
+      ]
+    }
diff --git a/kubernetes/contrib/charts/awx/charts/awx/templates/job.yaml b/kubernetes/contrib/charts/awx/charts/awx/templates/job.yaml
new file mode 100644 (file)
index 0000000..dd538ae
--- /dev/null
@@ -0,0 +1,125 @@
+{{/*
+# Copyright © 2019 Bell Canada
+#
+# 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" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  backoffLimit: 5
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}-mgnt
+        release: {{ .Release.Name }}
+    spec:
+      serviceAccount: {{ include "common.fullname" . }}
+      serviceAccountName: {{ include "common.fullname" . }}
+      restartPolicy: Never
+      initContainers:
+      - name: {{ include "common.name" . }}-init-readiness
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - awx-postgres
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+      containers:
+      - command: ["/bin/sh","-c"]
+        args: ["/etc/tower/job-entrypoint.sh"]
+        image: "{{ .Values.repository }}/{{ .Values.image.task }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-mgnt
+        resources:
+          requests:
+            cpu: 1500m
+            memory: 2Gi
+        securityContext:
+          privileged: true
+        volumeMounts:
+        - mountPath: /etc/tower/job-entrypoint.sh
+          name: awx-mgnt
+          readOnly: true
+          subPath: job-entrypoint.py
+        - mountPath: /etc/tower/settings.py
+          name: awx-application-config
+          readOnly: true
+          subPath: settings.py
+        - mountPath: /etc/tower/conf.d/
+          name: awx-application-credentials
+          readOnly: true
+        - mountPath: /etc/tower/SECRET_KEY
+          name: awx-secret-key
+          readOnly: true
+          subPath: SECRET_KEY
+
+      volumes:
+      - configMap:
+          defaultMode: 0777
+          items:
+          - key: entrypoint
+            path: job-entrypoint.py
+          name: {{ include "common.fullname" . }}-init-mgnt
+        name: awx-mgnt
+      - configMap:
+          defaultMode: 420
+          items:
+          - key: awx_settings
+            path: settings.py
+          name: {{ include "common.fullname" . }}-settings
+        name: awx-application-config
+      - name: awx-application-credentials
+        secret:
+          defaultMode: 420
+          items:
+          - key: credentials_py
+            path: credentials.py
+          - key: environment_sh
+            path: environment.sh
+          secretName: {{ include "common.fullname" . }}-secrets
+      - name: awx-secret-key
+        secret:
+          defaultMode: 420
+          items:
+          - key: secret_key
+            path: SECRET_KEY
+          secretName: {{ include "common.fullname" . }}-secrets
+      - configMap:
+          defaultMode: 420
+          items:
+          - key: rabbitmq.conf
+            path: rabbitmq.conf
+          - key: enabled_plugins
+            path: enabled_plugins
+          - key: rabbitmq_definitions.json
+            path: rabbitmq_definitions.json
+          name: {{ include "common.fullname" . }}-rabbitmq
+        name: rabbitmq-config
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
@@ -1,4 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
+{{/*
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # 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
+kind: Secret
+type: Opaque
 metadata:
-  name: {{ include "common.fullname" . }}-eteshare-configmap
+  name: {{ include "common.fullname" . }}-secrets
   namespace: {{ include "common.namespace" . }}
   labels:
-    app: {{ include "common.name" . }}
+    app: {{ include "common.fullname" . }}
     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
     release: {{ .Release.Name }}
     heritage: {{ .Release.Service }}
 data:
-{{ tpl (.Files.Glob "resources/config/eteshare/config/*").AsConfig . | indent 2 }}
+  credentials_py: {{ tpl (.Files.Get "resources/config/credentials.py") . | b64enc }}
+  environment_sh: {{ tpl (.Files.Get "resources/config/environment.sh") . | b64enc }}
+  rabbitmq_erlang_cookie: {{ .Values.config.rabbitmqErlangCookie | b64enc | quote }}
+  secret_key: {{ .Values.config.secretKey | b64enc | quote }}
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/charts/awx/templates/service.yaml b/kubernetes/contrib/charts/awx/charts/awx/templates/service.yaml
new file mode 100755 (executable)
index 0000000..ed3fd72
--- /dev/null
@@ -0,0 +1,80 @@
+{{/*
+# Copyright © 2019 Bell Canada
+#
+# 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" . }}-rmq-mgmt
+  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.rmqmgmt.type }}
+  ports:
+    - port: {{ .Values.service.rmqmgmt.externalPort }}
+      targetPort: {{ .Values.service.rmqmgmt.internalPort }}
+      name: {{ .Values.service.rmqmgmt.portName }}
+  selector:
+    app: {{ include "common.fullname" . }}
+    release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}-web
+  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.web.type }}
+  ports:
+    - port: {{ .Values.service.web.externalPort }}
+      targetPort: {{ .Values.service.web.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.web.nodePort }}
+      name: {{ .Values.service.web.portName }}
+  selector:
+    app: {{ include "common.fullname" . }}
+    release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}-rabbitmq
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+    type: LoadBalancer
+spec:
+  type: {{ .Values.service.rabbitmq.type }}
+  ports:
+    - port: {{ .Values.service.rabbitmq.http.externalPort }}
+      targetPort: {{ .Values.service.rabbitmq.http.internalPort }}
+      name: {{ .Values.service.rabbitmq.http.portName }}
+    - port: {{ .Values.service.rabbitmq.amqp.externalPort }}
+      targetPort: {{ .Values.service.rabbitmq.amqp.internalPort }}
+      name: {{ .Values.service.rabbitmq.amqp.portName }}
+  selector:
+    app: {{ include "common.fullname" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/charts/awx/templates/serviceaccout.yaml b/kubernetes/contrib/charts/awx/charts/awx/templates/serviceaccout.yaml
new file mode 100644 (file)
index 0000000..0f52ce8
--- /dev/null
@@ -0,0 +1,47 @@
+{{/*
+# Copyright © 2019 Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+  name: {{ include "common.fullname" . }}-endpoint-reader
+  namespace: {{ include "common.namespace" . }}
+rules:
+- apiGroups: ["", "extensions", "apps", "batch"]
+  resources: ["endpoints", "deployments", "pods", "replicasets/status", "jobs/status"]
+  verbs: ["get", "list"]
+---
+apiVersion: v1
+items:
+- apiVersion: rbac.authorization.k8s.io/v1
+  kind: RoleBinding
+  metadata:
+    name: {{ include "common.fullname" . }}-endpoint-reader
+    namespace: {{ include "common.namespace" . }}
+  roleRef:
+    apiGroup: rbac.authorization.k8s.io
+    kind: Role
+    name: {{ include "common.fullname" . }}-endpoint-reader
+  subjects:
+  - kind: ServiceAccount
+    name: {{ include "common.fullname" . }}
+kind: List
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/charts/awx/templates/statefulset.yaml b/kubernetes/contrib/charts/awx/charts/awx/templates/statefulset.yaml
new file mode 100644 (file)
index 0000000..bf85447
--- /dev/null
@@ -0,0 +1,213 @@
+{{/*
+# Copyright © 2019 Bell Canada
+#
+# 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/v1
+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:
+  podManagementPolicy: OrderedReady
+  replicas: {{ .Values.replicaCount }}
+  serviceName: {{ include "common.fullname" . }}
+  selector:
+    matchLabels:
+      app: {{ include "common.fullname" . }}
+      name: {{ include "common.name" . }}-web-deploy
+      service: django
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.fullname" . }}
+        name: {{ include "common.name" . }}-web-deploy
+        release: {{ .Release.Name }}
+        service: django
+    spec:
+
+      initContainers:
+      - name: {{ include "common.name" . }}-init-readiness
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - {{ include "common.name" . }}-mgnt
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+
+      containers:
+
+      - image: "{{ .Values.repository }}/{{ .Values.image.web }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-web
+        ports:
+        - containerPort: {{ .Values.service.web.internalPort }}
+          protocol: TCP
+        resources:
+          requests:
+            cpu: 500m
+            memory: 1Gi
+        volumeMounts:
+        - mountPath: /etc/tower/settings.py
+          name: awx-application-config
+          readOnly: true
+          subPath: settings.py
+        - mountPath: /etc/tower/conf.d/
+          name: awx-application-credentials
+          readOnly: true
+        - mountPath: /etc/tower/SECRET_KEY
+          name: awx-secret-key
+          readOnly: true
+          subPath: SECRET_KEY
+      - command: ["/bin/sh","-c"]
+        args: ["/usr/bin/launch_awx_task.sh"]
+        env:
+        - name: AWX_SKIP_MIGRATIONS
+          value: "1"
+
+        image: "{{ .Values.repository }}/{{ .Values.image.task }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-celery
+        resources:
+          requests:
+            cpu: 1500m
+            memory: 2Gi
+        securityContext:
+          privileged: true
+        volumeMounts:
+        - mountPath: /etc/tower/settings.py
+          name: awx-application-config
+          readOnly: true
+          subPath: settings.py
+        - mountPath: /etc/tower/conf.d/
+          name: awx-application-credentials
+          readOnly: true
+        - mountPath: /etc/tower/SECRET_KEY
+          name: awx-secret-key
+          readOnly: true
+          subPath: SECRET_KEY
+      - env:
+        - name: MY_POD_IP
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: status.podIP
+        - name: RABBITMQ_USE_LONGNAME
+          value: "true"
+        - name: RABBITMQ_NODENAME
+          value: rabbit@$(MY_POD_IP)
+        - name: RABBITMQ_ERLANG_COOKIE
+          valueFrom:
+            secretKeyRef:
+              key: rabbitmq_erlang_cookie
+              name: {{ include "common.fullname" . }}-secrets
+        - name: K8S_SERVICE_NAME
+          value: {{ include "common.servicename" . }}-rabbitmq
+
+        image: "{{ .Values.repository }}/{{ .Values.image.rabbitmq }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-rabbit
+        livenessProbe:
+          exec:
+            command:
+            - rabbitmqctl
+            - status
+          failureThreshold: 3
+          initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+          periodSeconds: {{ .Values.liveness.periodSeconds }}
+          successThreshold: 1
+          timeoutSeconds: 10
+        ports:
+        - containerPort: {{ .Values.service.rabbitmq.http.internalPort }}
+          name: {{ .Values.service.rabbitmq.http.portName }}
+          protocol: TCP
+        - containerPort: {{ .Values.service.rabbitmq.amqp.internalPort }}
+          name: {{ .Values.service.rabbitmq.amqp.portName }}
+          protocol: TCP
+        readinessProbe:
+          exec:
+            command:
+            - rabbitmqctl
+            - status
+          failureThreshold: 3
+          initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+          periodSeconds: {{ .Values.liveness.periodSeconds }}
+          successThreshold: 1
+          timeoutSeconds: 10
+        resources:
+          requests:
+            cpu: 500m
+            memory: 2Gi
+        volumeMounts:
+        - mountPath: /etc/rabbitmq
+          name: rabbitmq-config
+
+      - image: "{{ .Values.image.memcached }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-memcached
+        resources:
+          requests:
+            cpu: 500m
+            memory: 1Gi
+      serviceAccount: {{ include "common.fullname" . }}
+      serviceAccountName: {{ include "common.fullname" . }}
+      volumes:
+      - configMap:
+          defaultMode: 420
+          items:
+          - key: awx_settings
+            path: settings.py
+          name: {{ include "common.fullname" . }}-settings
+        name: awx-application-config
+      - name: awx-application-credentials
+        secret:
+          defaultMode: 420
+          items:
+          - key: credentials_py
+            path: credentials.py
+          - key: environment_sh
+            path: environment.sh
+          secretName: {{ include "common.fullname" . }}-secrets
+      - name: awx-secret-key
+        secret:
+          defaultMode: 420
+          items:
+          - key: secret_key
+            path: SECRET_KEY
+          secretName: {{ include "common.fullname" . }}-secrets
+      - configMap:
+          defaultMode: 420
+          items:
+          - key: rabbitmq.conf
+            path: rabbitmq.conf
+          - key: enabled_plugins
+            path: enabled_plugins
+          - key: rabbitmq_definitions.json
+            path: rabbitmq_definitions.json
+          name: {{ include "common.fullname" . }}-rabbitmq
+        name: rabbitmq-config
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/charts/awx/values.yaml b/kubernetes/contrib/charts/awx/charts/awx/values.yaml
new file mode 100755 (executable)
index 0000000..5974de3
--- /dev/null
@@ -0,0 +1,111 @@
+# Copyright © 2019 Bell Canada
+#
+# 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 mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+
+global: # global defaults
+  nodePortPrefixExt: 304
+  persistence: {}
+
+# application image
+repository: ansible
+image:
+  web: awx_web:latest
+  task: awx_task:latest
+  rabbitmq: awx_rabbitmq:3.7.4
+  memcached: memcached:latest
+pullPolicy: Always
+
+# application configuration
+config:
+  postgresUser: awx
+  postgresPassword: awx
+  postgresDB: awx
+# RabbitMQ Configuration
+  rabbitmqUser: awx
+  rabbitmqPassword: awxpass
+  rabbitmqVhost: awx
+  rabbitmqErlangCookie: cookiemonster3
+# This will create or update a default admin (superuser) account in AWX, if not provided
+# then these default values are used
+  awxAdminUser: admin
+  awxAdminPassword: password
+  awxAdminEmail: cds@onap.org
+# AWX Secret key
+# It's *very* important that this stay the same between upgrades or you will lose the ability to decrypt
+# your credentials
+  secretKey: awxsecret
+
+ingress:
+  enabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+  enabled: true
+
+## Persist data to a persitent volume
+persistence:
+  enabled: true
+  volumeReclaimPolicy: Retain
+
+  # Uncomment the storageClass parameter to use an existing PV
+  # that will match the following class.
+  # When uncomment the storageClass, the PV is not created anymore.
+
+  # storageClass: "nfs-dev-sc"
+
+  accessMode: ReadWriteMany
+  size: 5Gi
+
+  # When using storage class, mountPath and mountSubPath are
+  # simply ignored.
+
+  mountPath: /dockerdata-nfs
+  mountSubPath: awx/pgdata
+
+service:
+  rmqmgmt:
+    type: ClusterIP
+    portName: rmqmgmt
+    internalPort: 15672
+    externalPort: 15672
+  web:
+    type: NodePort
+    portName: web
+    internalPort: 8052
+    externalPort: 80
+    nodePort: 78
+  rabbitmq:
+    type: ClusterIP
+    http:
+      portName: http
+      internalPort: 15672
+      externalPort: 15672
+    amqp:
+      portName: amqp
+      internalPort: 5672
+      externalPort: 5672
+
+resources: {}
old mode 100644 (file)
new mode 100755 (executable)
similarity index 73%
rename from kubernetes/robot/requirements.yaml
rename to kubernetes/contrib/charts/awx/requirements.yaml
index 3ee610f..486fc65
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,7 +15,4 @@
 dependencies:
   - name: common
     version: ~4.x-0
-    # local reference to common chart, as it is
-    # a part of this chart's package and will not
-    # be published independently to a repo (at this point)
     repository: '@local'
\ No newline at end of file
diff --git a/kubernetes/contrib/charts/awx/values.yaml b/kubernetes/contrib/charts/awx/values.yaml
new file mode 100755 (executable)
index 0000000..6c6a90e
--- /dev/null
@@ -0,0 +1,39 @@
+# Copyright © 2019 Bell Canada
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+  nodePortPrefixExt: 304
+  commonConfigPrefix: awx
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.2
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: hub.docker.io
+pullPolicy: Always
+
+# default number of instances
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+
+ingress:
+  enabled: false
+
+resources: {}
index db2c984..86b41aa 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Netbox IPAM
 name: netbox
-version: 4.0.0
+version: 5.0.0
index c23cb20..cfd2a3a 100755 (executable)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Netbox - Application (WSGI + Gunicorn)
 name: netbox-app
-version: 4.0.0
+version: 5.0.0
index 5d82013..ab55e20 100755 (executable)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 5d82013..ab55e20 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 882cc5c..e15806f 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2018 Amdocs, Bell Canada
+# Copyright © 2019 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -12,5 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+awx:
+  enabled: true
 netbox:
   enabled: true
\ No newline at end of file
index ceda39b..9c23194 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP DCAE Gen2
 name: dcaegen2
-version: 4.0.0
+version: 5.0.0
index f77bc8f..fcd62da 100644 (file)
@@ -1,4 +1,4 @@
-make-dcaegen2: make-dcae-bootstrap make-dcae-cloudify-manager make-dcae-config-binding-service make-dcae-healthcheck make-dcae-redis make-dcae-servicechange-handler make-dcae-inventory-api make-dcae-deployment-handler make-dcae-policy-handler
+make-dcaegen2: make-dcae-bootstrap make-dcae-cloudify-manager make-dcae-config-binding-service make-dcae-healthcheck make-dcae-redis make-dcae-servicechange-handler make-dcae-inventory-api make-dcae-deployment-handler make-dcae-policy-handler make-dcae-dashboard
 
 make-dcae-bootstrap:
        cd charts && helm dep up dcae-bootstrap && helm lint dcae-bootstrap
@@ -26,3 +26,6 @@ make-dcae-deployment-handler:
 
 make-dcae-policy-handler:
        cd charts && helm dep up dcae-policy-handler && helm lint dcae-policy-handler
+
+make-dcae-dashboard:
+       cd charts && helm dep up dcae-dashboard && helm lint dcae-dashboard
index 6ac53de..b92c943 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP DCAE Bootstrap
 name: dcae-bootstrap
-version: 4.0.0
+version: 5.0.0
index 5807f08..4b650c0 100644 (file)
@@ -18,8 +18,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: postgres
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/certs/cacert.pem b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/certs/cacert.pem
new file mode 100644 (file)
index 0000000..897c8ae
--- /dev/null
@@ -0,0 +1,31 @@
+-----BEGIN CERTIFICATE-----
+MIIFPjCCAyagAwIBAgIJAJ6u7cCnzrWdMA0GCSqGSIb3DQEBCwUAMCwxDjAMBgNV
+BAsMBU9TQUFGMQ0wCwYDVQQKDARPTkFQMQswCQYDVQQGEwJVUzAeFw0xODA0MDUx
+NDE1MjhaFw0zODAzMzExNDE1MjhaMCwxDjAMBgNVBAsMBU9TQUFGMQ0wCwYDVQQK
+DARPTkFQMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
+ggIBAMA5pkgRs7NhGG4ew5JouhyYakgYUyFaG121+/h8qbSdt0hVQv56+EA41Yq7
+XGie7RYDQK9NmAFF3gruE+6X7wvJiChp+Cyd7sFMnb65uWhxEdxWTM2BJFrgfzUn
+H8ZCxgaCo3XH4PzlKRy2LQQJEJECwl/RZmRCXijMt5e9h8XoZY/fKkKcZZUsWNCM
+pTo266wjvA9MXLmdgReRj0+vrCjrNqy+htwJDztoiHWiYPqT6o8EvGcgjNqjlZx7
+NUNf8MfLDByqKF6+wRbHv1GKjn3/Vijd45Fv8riyRYROiFanvbV6jIfBkv8PZbXg
+2VDWsYsgp8NAvMxK+iV8cO+Ck3lBI2GOPZbCEqpPVTYbLUz6sczAlCXwQoPzDIZY
+wYa3eR/gYLY1gP2iEVHORag3bLPap9ZX5E8DZkzTNTjovvLk8KaCmfcaUMJsBtDd
+ApcUitz10cnRyZc1sX3gE1f3DpzQM6t9C5sOVyRhDcSrKqqwb9m0Ss04XAS9FsqM
+P3UWYQyqDXSxlUAYaX892u8mV1hxnt2gjb22RloXMM6TovM3sSrJS0wH+l1nznd6
+aFXftS/G4ZVIVZ/LfT1is4StoyPWZCwwwly1z8qJQ/zhip5NgZTxQw4mi7ww35DY
+PdAQOCoajfSvFjqslQ/cPRi/MRCu079heVb5fQnnzVtnpFQRAgMBAAGjYzBhMB0G
+A1UdDgQWBBRTVTPyS+vQUbHBeJrBKDF77+rtSTAfBgNVHSMEGDAWgBRTVTPyS+vQ
+UbHBeJrBKDF77+rtSTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAN
+BgkqhkiG9w0BAQsFAAOCAgEAPx/IaK94n02wPxpnYTy+LVLIxwdq/kawNd6IbiMz
+L87zmNMDmHcGbfoRCj8OkhuggX9Lx1/CkhpXimuYsZOFQi5blr/u+v4mIbsgbmi9
+7j+cUHDP0zLycvSvxKHty51LwmaX9a4wkJl5zBU4O1sd/H9tWcEmwJ39ltKoBKBx
+c94Zc3iMm5ytRWGj+0rKzLDAXEWpoZ5bE5PLJauA6UDCxDLfs3FwhbS7uDggxYvf
+jySF5FCNET94oJ+m8s7VeHvoa8iPGKvXrIqdd7XDHnqJJlVKr7m9S0fMbyEB8ci2
+RtOXDt93ifY1uhoEtEykn4dqBSp8ezvNMnwoXdYPDvTd9uCAFeWFLVreBAWxd25h
+PsBTkZA5hpa/rA+mKv6Af4VBViYr8cz4dZCsFChuioVebe9ighrfjB//qKepFjPF
+CyjzKN1u0JKm/2x/ORqxkTONG8p3uDwoIOyimUcTtTMv42bfYD88RKakqSFXE9G+
+Z0LlaKABqfjK49o/tsAp+c5LoNlYllKhnetO3QAdraHwdmC36BhoghzR1jpX751A
+cZn2VH3Q4XKyp01cJNCJIrua+A+bx6zh3RyW6zIIkbRCbET+UD+4mr8WIcSE3mtR
+ZVlnhUDO4z9//WKMVzwS9Rh8/kuszrGFI1KQozXCHLrce3YP6RYZfOed79LXaRwX
+dYY=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/dmaap-plugin.json b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/dmaap-plugin.json
new file mode 100644 (file)
index 0000000..41404b0
--- /dev/null
@@ -0,0 +1,8 @@
+{
+    "dmaap": {
+        "username": "notused",
+        "password": "doesnotmatter",
+        "owner": "dcaecm",
+        "protocol": "http"
+    }
+}
\ No newline at end of file
index 51d31a3..d459d5b 100644 (file)
@@ -33,6 +33,8 @@
   "tls":
     {
       "cert_path": "/opt/tls/shared",
-      "image": "{{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}"
+      "image": "{{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}",
+      "component_ca_cert_path": "/opt/dcae/cacert/cacert.pem",
+      "ca_cert_configmap": "{{ include "common.fullname" . }}-dcae-cacert"
     }
 }
index e40a030..2718e18 100644 (file)
@@ -24,7 +24,7 @@ external_tls_port: {{ .Values.config.address.dashboard.portSecure }}
 database_cluster_name: {{ .Values.postgres.service.name2 }}.{{ include "common.namespace" . }}
 database_cluster_fqdn: {{ .Values.postgres.service.name2 }}.{{ include "common.namespace" . }}.{{ .Values.postgres.suffix }}
 database_name: "dashboard_pg"
-cloudify_ip: {{ .Values.config.address.cm }}
+cloudify_ip: {{ .Values.config.address.cm.host }}
 cloudify_user: "admin"
 cloudify_password: "admin"
 consul_url:  {{ .Values.config.address.consul_ui }}
index 878d94b..21134ad 100644 (file)
@@ -31,4 +31,11 @@ metadata:
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/inputs/*").AsConfig . | indent 2 }}
-
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-dcae-cacert
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/certs/*").AsConfig . | indent 2 }}
index 0463655..be5a769 100644 (file)
@@ -61,6 +61,19 @@ spec:
             fieldRef:\r
               apiVersion: v1\r
               fieldPath: metadata.namespace\r
+      - name: init-tls\r
+        env:\r
+        - name: POD_IP\r
+          valueFrom:\r
+            fieldRef:\r
+              apiVersion: v1\r
+              fieldPath: status.podIP\r
+        image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}\r
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}\r
+        resources: {}\r
+        volumeMounts:\r
+        - mountPath: /opt/tls/shared\r
+          name: tls-info\r
       containers:\r
         - name: {{ include "common.name" . }}\r
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"\r
@@ -75,14 +88,21 @@ spec:
             - mountPath: /etc/localtime\r
               name: localtime\r
               readOnly: true\r
+            - mountPath: /certs\r
+              name: tls-info\r
+              readOnly: true\r
           env:\r
             - name: CMADDR\r
-              value: {{ .Values.config.address.cm }}\r
+              value: {{ .Values.config.address.cm.host }}\r
             - name: CMPASS\r
               valueFrom:\r
                 secretKeyRef:\r
                   name: {{ include "common.name" . }}-cmpass\r
                   key: password\r
+            - name: CMPROTO\r
+              value: {{ .Values.config.address.cm.proto }}\r
+            - name: CMPORT\r
+              value: !!string {{ .Values.config.address.cm.port }}\r
             - name: CONSUL\r
               value: {{ .Values.config.address.consul.host }}:{{ .Values.config.address.consul.port }}\r
             - name: DCAE_NAMESPACE\r
@@ -99,5 +119,7 @@ spec:
         - name: localtime\r
           hostPath:\r
             path: /etc/localtime\r
+        - name: tls-info\r
+          emptyDir: {}\r
       imagePullSecrets:\r
         - name: "{{ include "common.namespace" . }}-docker-registry-key"\r
index aec082f..7e93715 100644 (file)
@@ -38,10 +38,15 @@ config:
       host: consul-server
       port: 8500
     consul_ui: consul-server-ui
-    cm: dcae-cloudify-manager
+    cm:
+      host: dcae-cloudify-manager
+      port: 443
+      proto: https
+    #Temporary assignment to avoid conflict
+    #To be removed after bootstrap changes done to remove dashboard
     dashboard:
-      port: 30418
-      portSecure: 30419
+      port: 30473
+      portSecure: 30474
     datafile_collector:
       port: 30223
       portSecure: 30262
@@ -90,7 +95,7 @@ postgres:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.4.18
+image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.6.2
 default_k8s_location: central
 
 # DCAE component images to be deployed via Cloudify Manager
index 1f84269..159e2b5 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP DCAE Cloudify Manager
 name: dcae-cloudify-manager
-version: 4.0.0
+version: 5.0.0
index d6c58cd..b3e90a2 100644 (file)
@@ -34,6 +34,12 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
+      # host alias allows local 'cfy' command to use https and match
+      # the host name in the certificate
+      hostAliases:
+      - ip: "127.0.0.1"
+        hostnames:
+        - "dcae-cloudify-manager"
       initContainers:
       - name: {{ include "common.name" . }}-multisite-init
         image: {{ include "common.repository" . }}/{{ .Values.multisiteInitImage }}
@@ -44,10 +50,26 @@ spec:
           - --configmap
           - {{ .Values.multisiteConfigMapName }}
         restartPolicy: Never
+      - name: init-tls
+        env:
+          - name: POD_IP
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: status.podIP
+        image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        resources: {}
+        volumeMounts:
+            - mountPath: /opt/tls/shared
+              name: tls-info
       containers:
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          env:
+            - name: REQUESTS_CA_BUNDLE
+              value: "/opt/onap/certs/cacert.pem"
           resources:
 {{ include "common.resources" . | indent 12 }}
           ports:
@@ -86,6 +108,8 @@ spec:
             readOnly: true
           - mountPath: /cfy-persist
             name: cm-persistent
+          - mountPath: /opt/onap/certs
+            name: tls-info
           securityContext:
             privileged: True
       volumes:
@@ -107,5 +131,7 @@ spec:
         - name: cm-persistent
           persistentVolumeClaim:
             claimName: {{ include "common.fullname" . }}-data
+        - emptyDir: {}
+          name: tls-info
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 41f0750..70504ef 100644 (file)
@@ -44,7 +44,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.cm-container:1.6.2
+image: onap/org.onap.dcaegen2.deployments.cm-container:2.0.2
 pullPolicy: Always
 
 # name of shared ConfigMap with kubeconfig for multiple clusters
@@ -69,8 +69,8 @@ readiness:
 service:
   type: ClusterIP
   name: dcae-cloudify-manager
-  externalPort: 80
-  internalPort: 80
+  externalPort: 443
+  internalPort: 443
 
 # Resource Limit flavor -By Default using small
 flavor: small
index 295abdb..f1aa82b 100644 (file)
@@ -18,4 +18,4 @@
 apiVersion: v1
 description: ONAP DCAE Config Binding Service
 name: dcae-config-binding-service
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index a968204..19fe038 100644 (file)
@@ -50,36 +50,60 @@ spec:
               fieldRef:
                 apiVersion: v1
                 fieldPath: metadata.namespace
+        {{- if .Values.service.secure.enabled }}
+        - name: init-tls
+          env:
+          - name: POD_IP
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: status.podIP
+          image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources: {}
+          volumeMounts:
+            - mountPath: /opt/tls/shared
+              name: tls-info
+        {{ end  }}
       containers:
+        {{- if .Values.service.secure.enabled }}
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           resources:
 {{ include "common.resources" . | indent 12 }}
           ports:
-          - containerPort: {{ .Values.service.internalPort }}
+          - containerPort: {{ .Values.service.secure.internalPort }}
           # disable liveness probe when breakpoints set in debugger
           # so K8s doesn't restart unresponsive container
           {{- if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.secure.internalPort }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end -}}
           readinessProbe:
             httpGet:
+              scheme: "HTTPS"
               path: {{ .Values.readiness.path }}
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.secure.internalPort }}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
           - name: {{ include "common.fullname" . }}-logs
             mountPath: /opt/logs
+          - name: tls-info
+            mountPath: /opt/tls
           env:
             - name: CONSUL_HOST
               value: consul.{{ include "common.namespace" . }}
-
+            - name: USE_HTTPS
+              value: "1"
+            - name: HTTPS_CERT_PATH
+              value: "/opt/tls/cert.pem"
+            - name: HTTPS_KEY_PATH
+              value: "/opt/tls/key.pem"
         - name: {{ include "common.name" . }}-filebeat-onap
           image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
@@ -91,13 +115,67 @@ spec:
             mountPath: /usr/share/filebeat/data
           - name: {{ include "common.fullname" . }}-logs
             mountPath: /var/log/onap
+        {{ end }}
+        {{- if .Values.service.insecure.enabled }}
+        - name: {{ include "common.name" . }}-insecure
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources:
+{{ include "common.resources" . | indent 12 }}
+          ports:
+          - containerPort: {{ .Values.service.insecure.internalPort }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{- if eq .Values.liveness.enabled true }}
+          livenessProbe:
+            tcpSocket:
+              port: {{ .Values.service.insecure.internalPort }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end -}}
+          readinessProbe:
+            httpGet:
+              scheme: "HTTP"
+              path: {{ .Values.readiness.path }}
+              port: {{ .Values.service.insecure.internalPort }}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          volumeMounts:
+          - name: {{ include "common.fullname" . }}-logs-insecure
+            mountPath: /opt/logs
+          env:
+            - name: CONSUL_HOST
+              value: consul.{{ include "common.namespace" . }}
+        - name: {{ include "common.name" . }}-filebeat-onap-insecure
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts:
+          - name: {{ include "common.fullname" . }}-filebeat-conf
+            mountPath: /usr/share/filebeat/filebeat.yml
+            subPath: filebeat.yml
+          - name: {{ include "common.fullname" . }}-data-filebeat-insecure
+            mountPath: /usr/share/filebeat/data
+          - name: {{ include "common.fullname" . }}-logs-insecure
+            mountPath: /var/log/onap
+        {{ end }}
       volumes:
         - name: {{ include "common.fullname" . }}-filebeat-conf
           configMap:
             name: {{ .Release.Name }}-cbs-filebeat-configmap
+        {{- if .Values.service.secure.enabled }}
         - name: {{ include "common.fullname" . }}-data-filebeat
           emptyDir: {}
         - name:  {{ include "common.fullname" . }}-logs
           emptyDir: {}
+        - name: tls-info
+          emptyDir: {}
+        {{ end }}
+        {{- if .Values.service.insecure.enabled }}
+        - name: {{ include "common.fullname" . }}-data-filebeat-insecure
+          emptyDir: {}
+        - name:  {{ include "common.fullname" . }}-logs-insecure
+          emptyDir: {}
+        {{ end }}
+
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 794b896..8176e77 100644 (file)
@@ -28,16 +28,29 @@ metadata:
 spec:
   type: {{ .Values.service.type }}
   ports:
-    {{if eq .Values.service.type "NodePort" -}}
-    - port: {{ .Values.service.externalPort }}
-      nodePort: {{ .Values.global.nodePortPrefixExt| default .Values.nodePortPrefixExt }}{{ .Values.service.nodePort }}
-      name: {{ .Values.service.name }}
+    {{ if eq .Values.service.type "NodePort" -}}
+    {{ if .Values.service.insecure.enabled -}}
+    - port: {{ .Values.service.insecure.externalPort }}
+      nodePort: {{ .Values.global.nodePortPrefixExt| default .Values.nodePortPrefixExt }}{{ .Values.service.insecure.nodePort }}
+      name: {{ .Values.service.name }}-insecure
+    {{- end }}
+    {{ if .Values.service.secure.enabled -}}
+    - port: {{ .Values.service.secure.externalPort }}
+      nodePort: {{ .Values.global.nodePortPrefixExt| default .Values.nodePortPrefixExt }}{{ .Values.service.secure.nodePort }}
+      name: {{ .Values.service.name }}-secure
+    {{- end }}
     {{- else -}}
-    - port: {{ .Values.service.externalPort }}
-      targetPort: {{ .Values.service.internalPort }}
-      name: {{ .Values.service.name }}
-    {{- end}}
+    {{ if .Values.service.insecure.enabled -}}
+    - port: {{ .Values.service.insecure.externalPort }}
+      targetPort: {{ .Values.service.insecure.internalPort }}
+      name: {{ .Values.service.name }}-insecure
+    {{- end }}
+    {{ if .Values.service.secure.enabled -}}
+    - port: {{ .Values.service.secure.externalPort }}
+      targetPort: {{ .Values.service.secure.internalPort }}
+      name: {{ .Values.service.name }}-secure
+    {{- end }}
+    {{- end }}
   selector:
     app: {{ include "common.name" . }}
     release: {{ .Release.Name }}
-
index 4605e88..c7db0d5 100644 (file)
@@ -25,6 +25,8 @@ global:
   readinessImage: readiness-check:2.0.0
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
+  tlsRepository: nexus3.onap.org:10001
+  tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3
   repositoryCred:
     user: docker
     password: docker
@@ -43,7 +45,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.configbinding.app-app:2.3.0
+image: onap/org.onap.dcaegen2.platform.configbinding:2.5.1
 pullPolicy: Always
 
 # probe configuration parameters
@@ -63,9 +65,18 @@ readiness:
 service:
   type: NodePort
   name: config-binding-service
-  externalPort: 10000
-  internalPort: 10000
-  nodePort: 15
+  # TLS service
+  secure:
+    enabled: true
+    externalPort: 10443
+    internalPort: 10443
+    nodePort: 14
+  # Non-TLS service
+  insecure:
+    enabled: true
+    externalPort: 10000
+    internalPort: 10000
+    nodePort: 15
 
 # Resource Limit flavor -By Default using small
 flavor: small
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/Chart.yaml b/kubernetes/dcaegen2/charts/dcae-dashboard/Chart.yaml
new file mode 100644 (file)
index 0000000..5250c17
--- /dev/null
@@ -0,0 +1,5 @@
+apiVersion: v1
+appVersion: "1.0"
+description: DCAE Dashboard
+name: dcae-dashboard
+version: 5.0.0
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/requirements.yaml b/kubernetes/dcaegen2/charts/dcae-dashboard/requirements.yaml
new file mode 100644 (file)
index 0000000..b0e70b3
--- /dev/null
@@ -0,0 +1,21 @@
+# 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: ~5.x-0
+    repository: '@local'
+  - name: postgres
+    version: ~5.x-0
+    repository: '@local'
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/resources/log/filebeat.yml b/kubernetes/dcaegen2/charts/dcae-dashboard/resources/log/filebeat.yml
new file mode 100644 (file)
index 0000000..0e5ee9b
--- /dev/null
@@ -0,0 +1,72 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018-2019 AT&T Intellectual Property. All rights reserved.
+# Modifications Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+  #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+  paths:
+    - /var/log/onap/*/*/*/*.log
+    - /var/log/onap/*/*/*.log
+    - /var/log/onap/*/*.log
+  #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+  ignore_older: 48h
+  # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+  clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+  #List of logstash server ip addresses with port number.
+  #But, in our case, this will be the loadbalancer IP address.
+  #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  #If enable will do load balancing among availabe Logstash, automatically.
+  loadbalance: true
+
+  #The list of root certificates for server verifications.
+  #If certificate_authorities is empty or not set, the trusted
+  #certificate authorities of the host system are used.
+  #ssl.certificate_authorities: $ssl.certificate_authorities
+
+  #The path to the certificate for SSL client authentication. If the certificate is not specified,
+  #client authentication is not available.
+  #ssl.certificate: $ssl.certificate
+
+  #The client certificate key used for client authentication.
+  #ssl.key: $ssl.key
+
+  #The passphrase used to decrypt an encrypted key stored in the configured key file
+  #ssl.key_passphrase: $ssl.key_passphrase
+
+logging:
+  level: debug
+
+  # enable file rotation with default configuration
+  to_files: true
+
+  # do not log to syslog
+  to_syslog: false
+
+  files:
+    path: /usr/share/filebeat/logs
+    name: mybeat.log
+    keepfiles: 7
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/templates/configmap.yaml b/kubernetes/dcaegen2/charts/dcae-dashboard/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..41d5826
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright Â© 2017 Amdocs, Bell Canada
+# Modifications Copyright Â© 2019 AT&T
+#
+# 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" . }}-filebeat-configmap
+  namespace: {{include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/log/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/templates/deployment.yaml b/kubernetes/dcaegen2/charts/dcae-dashboard/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..779844c
--- /dev/null
@@ -0,0 +1,168 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2019 AT&T 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.
+# ============LICENSE_END=========================================================
+
+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: 1
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      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
+          - dcae-cloudify-manager
+          - --container-name
+          - consul-server
+          - --container-name
+          - dcae-inventory-api
+          - --container-name
+          - dcae-deployment-handler
+          - --container-name
+          - {{ .Values.postgres.nameOverride }}
+          - "-t"
+          - "45"
+          env:
+          - name: NAMESPACE
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: metadata.namespace
+        - name: init-tls
+          env:
+          - name: POD_IP
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: status.podIP
+          image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources: {}
+          volumeMounts:
+            - mountPath: /opt/tls/shared
+              name: tls-info
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources:
+{{ include "common.resources" . | indent 12 }}
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+            protocol: TCP
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{- if eq .Values.liveness.enabled true }}
+          livenessProbe:
+            tcpSocket:
+              port: {{ .Values.service.internalPort }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end }}
+          readinessProbe:
+            httpGet:
+              path: {{ .Values.readiness.path }}
+              port: {{ .Values.service.internalPort }}
+              scheme: {{ .Values.readiness.scheme }}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+            failureThreshold: 1
+            successThreshold: 1
+            timeoutSeconds: 1
+          volumeMounts:
+            - mountPath: /usr/local/share/ca-certificates/
+              name: tls-info
+          env:
+            - name: CONSUL_HOST
+              value: consul-server.{{ include "common.namespace" . }}
+            - name: CONFIG_BINDING_SERVICE
+              value: config-binding-service
+            - name: inventory_url
+              value: {{ .Values.config.inventory_url }}
+            - name: postgres_port
+              value: "{{ .Values.postgres.config.pgPort }}"
+            - name: cloudify_password
+              value: admin
+            - name: dhandler_url
+              value: {{ .Values.config.dhandler_url }}
+            - name: cfy_url
+              value: {{ .Values.config.cfy_url }}
+            - name: cloudify_user
+              value: admin
+            - name: consul_url
+              value: http://consul-server-ui:8500
+            - name: postgres_user_dashboard
+              value: {{ .Values.postgres.config.pgUserName }}
+            - name: postgres_db_name
+              value: {{ .Values.postgres.config.pgDatabase }}
+            - name: postgres_password_dashboard
+              value: {{ .Values.postgres.config.pgUserPassword }}
+            - name: postgres_ip
+              value: {{ .Values.postgres.service.name2 }}
+            - name: POD_IP
+              valueFrom:
+                fieldRef:
+                  apiVersion: v1
+                  fieldPath: status.podIP
+        - name: {{ include "common.name" . }}-filebeat
+          env:
+            - name: POD_IP
+              valueFrom:
+                fieldRef:
+                  apiVersion: v1
+                  fieldPath: status.podIP
+          image: {{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}
+          imagePullPolicy: IfNotPresent
+          resources: {}
+          volumeMounts:
+          - mountPath: /var/log/onap/dashboard
+            name: component-log
+          - mountPath: /usr/share/filebeat/data
+            name: filebeat-data
+          - mountPath: /usr/share/filebeat/filebeat.yml
+            name: filebeat-conf
+            subPath: filebeat.yml
+      volumes:
+        - emptyDir: {}
+          name: component-log
+        - emptyDir: {}
+          name: filebeat-data
+        - configMap:
+            defaultMode: 420
+            name: {{ include "common.fullname" . }}-filebeat-configmap
+          name: filebeat-conf
+        - emptyDir: {}
+          name: tls-info
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
+
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/templates/service.yaml b/kubernetes/dcaegen2/charts/dcae-dashboard/templates/service.yaml
new file mode 100644 (file)
index 0000000..39f16bd
--- /dev/null
@@ -0,0 +1,43 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2019 AT&T 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.
+# ============LICENSE_END=========================================================
+
+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 }}
+      nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.name }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.name }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
+
diff --git a/kubernetes/dcaegen2/charts/dcae-dashboard/values.yaml b/kubernetes/dcaegen2/charts/dcae-dashboard/values.yaml
new file mode 100644 (file)
index 0000000..615afc4
--- /dev/null
@@ -0,0 +1,126 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2019 AT&T 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.
+# ============LICENSE_END=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+  nodePortPrefixExt: 304
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.0
+  loggingRepository: docker.elastic.co
+  loggingImage: beats/filebeat:5.5.0
+  tlsRepository: nexus3.onap.org:10001
+  tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3
+
+config:
+  logstashServiceName: log-ls
+  logstashPort: 5044
+  dhandler_url: https://deployment-handler:8443
+  cfy_url: https://dcae-cloudify-manager/api/v3.1
+  inventory_url: https://inventory:8080
+  # Addresses of other ONAP entities
+  address:
+    consul:
+      host: consul-server
+      port: 8500
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.ccsdk.dashboard.ccsdk-app-os:1.1.0
+pullPolicy: Always
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  # liveness not desirable for Cloudify Manager container
+  enabled: false
+
+readiness:
+  initialDelaySeconds: 30
+  periodSeconds: 30
+  path: /ccsdk-app/health
+  scheme: HTTP
+
+service:
+  type: NodePort
+  name: dashboard
+  externalPort: 8080
+  internalPort: 8080
+  nodePort: 18
+# application configuration override for postgres
+postgres:
+  nameOverride: dcae-dashboard-pg
+  service:
+    name: dcae-dashboard-postgres
+    name2: dcae-dashboard-pg-primary
+    name3: dcae-dashboard-pg-replica
+  container:
+    name:
+      primary: dcae-dashboard-pg-primary
+      replica: dcae-dashboard-pg-replica
+  config:
+    pgUserName: dashboard_pg_admin
+    pgDatabase: dashboard_pg_db_common
+    pgPrimaryPassword: onapdemodb
+    pgUserPassword: onapdemodb
+    pgRootPassword: onapdemodb
+    pgPort: "5432"
+  persistence:
+    mountSubPath: dcae-dashboard/data
+    mountInitPath: dcae-dashboard
+  pgpool:
+    nameOverride: dcae-dashboard-pgpool
+    service:
+      name: dcae-dashboard-pgpool
+    credentials:
+      pgusername: dcae_dashboard
+      pgpassword: onapdemodb
+    container:
+      name:
+        primary: dcae-dashboard-pgpool-primary
+        replica: dcae-dashboard-pgpool-replica
+
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      cpu: 2
+      memory: 2Gi
+    requests:
+      cpu: 1
+      memory: 1Gi
+  large:
+    limits:
+      cpu: 4
+      memory: 4Gi
+    requests:
+      cpu: 2
+      memory: 2Gi
+  unlimited: {}
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "dcae"
+
index 35d892a..042eb68 100644 (file)
@@ -18,4 +18,4 @@
 apiVersion: v1
 description: ONAP DCAE Deployment Handler
 name: dcae-deployment-handler
-version: 4.0.0
+version: 5.0.0
index 600f07c..026355a 100644 (file)
@@ -1,8 +1,8 @@
 {
     "cloudify": {
-        "protocol": "http"
+        "protocol": "https"
     },
     "inventory": {
-        "protocol": "http"
+        "protocol": "https"
     }
-}
\ No newline at end of file
+}
index 3e4e53b..a671978 100644 (file)
@@ -72,7 +72,7 @@ spec:
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           args:
           - --service
-          - "cloudify_manager|dcae-cloudify-manager.{{ include "common.namespace" . }}|80"
+          - "cloudify_manager|dcae-cloudify-manager.{{ include "common.namespace" . }}|443"
           - --service
           - "inventory|inventory.{{ include "common.namespace" . }}|8080"
           - --key
@@ -119,6 +119,8 @@ spec:
               value: admin
             - name: CONFIG_BINDING_SERVICE
               value: config-binding-service
+            - name: NODE_EXTRA_CA_CERTS
+              value: /opt/app/dh/etc/cert/cacert.pem
             - name: POD_IP
               valueFrom:
                 fieldRef:
index 0eddf7c..30893b6 100644 (file)
@@ -46,7 +46,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.deployment-handler:4.0.1
+image: onap/org.onap.dcaegen2.platform.deployment-handler:4.2.0
 pullPolicy: Always
 
 # probe configuration parameters
index 56e49c9..c6db31d 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP DCAE Health Check
 name: dcae-healthcheck
-version: 4.0.0
+version: 5.0.0
index 5b4519e..500ab3c 100644 (file)
@@ -18,5 +18,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 913cb71..fb5a195 100644 (file)
@@ -45,7 +45,7 @@ readiness:
   periodSeconds: 10
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.healthcheck-container:1.2.4
+image: onap/org.onap.dcaegen2.deployments.healthcheck-container:1.2.5
 
 # Resource Limit flavor -By Default using small
 flavor: small
index 98844dc..d2b275b 100644 (file)
@@ -18,4 +18,4 @@
 apiVersion: v1
 description: ONAP DCAE Policy Handler
 name: dcae-policy-handler
-version: 4.0.0
+version: 5.0.0
index f01b628..49ae5d2 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP DCAE Redis
 name: dcae-redis
-version: 4.0.0
+version: 5.0.0
index f6b1545..c0e6595 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 918f82e..64c8910 100644 (file)
@@ -18,4 +18,4 @@
 apiVersion: v1
 description: ONAP DCAE Service Change Handler
 name: dcae-servicechange-handler
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1b6e852..e1735ec 100644 (file)
@@ -18,4 +18,4 @@
 apiVersion: v1
 description: ONAP DCAE Inventory API Service
 name: dcae-inventory-api
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 55ac839..9136278 100644 (file)
@@ -15,8 +15,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: postgres
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index a8329f6..c8c7dd7 100644 (file)
       "gzipEnabledForRequests": false,
       "timeout": "5000milliseconds",
       "connectionTimeout": "5000milliseconds"
+    },
+    "server": {
+        "applicationConnectors": [{
+          "type": "https",
+          "port": 8080,
+          "keyStorePath": "/opt/cert/cert.jks",
+          "keyStorePassword": "hD:!w:CxF]lGvM6Mz9l^j[7U",
+          "keyStoreType": "JKS"
+        }]
     }
-  }
\ No newline at end of file
+  }
index e3e4aaf..28eeae2 100644 (file)
@@ -50,6 +50,19 @@ spec:
               fieldRef:
                 apiVersion: v1
                 fieldPath: metadata.namespace
+        - name: init-tls
+          env:
+          - name: POD_IP
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: status.podIP
+          image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources: {}
+          volumeMounts:
+            - mountPath: /opt/tls/shared
+              name: tls-info
       containers:
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -79,12 +92,15 @@ spec:
             httpGet:
               path: {{ .Values.readiness.path }}
               port: {{ .Values.service.internalPort }}
+              scheme: {{ .Values.readiness.scheme }}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
             - name: {{  include "common.fullname" . }}-inv-config
               mountPath: /opt/config.json
               subPath: config.json
+            - mountPath: /opt/cert/
+              name: tls-info
           env:
             - name: CONSUL_HOST
               value: consul.{{ include "common.namespace" . }}
@@ -92,5 +108,7 @@ spec:
         - name: {{ include "common.fullname" . }}-inv-config
           configMap:
             name: {{ include "common.fullname" . }}-configmap
+        - emptyDir: {}
+          name: tls-info
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index f120402..8e4430c 100644 (file)
@@ -24,6 +24,8 @@ global:
   readinessImage: readiness-check:2.0.0
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
+  tlsRepository: nexus3.onap.org:10001
+  tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3
   repositoryCred:
     user: docker
     password: docker
@@ -42,7 +44,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.inventory-api:3.2.0
+image: onap/org.onap.dcaegen2.platform.inventory-api:3.4.0
 
 pullPolicy: Always
 
@@ -59,6 +61,7 @@ readiness:
   initialDelaySeconds: 30
   periodSeconds: 30
   path: /dcae-service-types
+  scheme: HTTPS
 
 service:
   type: ClusterIP
index 7ddc800..4578d4c 100644 (file)
@@ -17,6 +17,6 @@
     "isFilterInEmptyResources": false
   },
   "dcaeInventoryClient": {
-    "uri": "http://inventory:8080"
+    "uri": "https://inventory:8080"
   }
 }
index 44ebc42..d948d34 100644 (file)
@@ -54,16 +54,23 @@ spec:
               fieldRef:
                 apiVersion: v1
                 fieldPath: metadata.namespace
+        - name: init-tls
+          env:
+          - name: POD_IP
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: status.podIP
+          image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          resources: {}
+          volumeMounts:
+            - mountPath: /opt/tls/shared
+              name: tls-info
       containers:
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          command: ["java"]
-          args:
-            - "-jar"
-            - "/opt/servicechange-handler.jar"
-            - "prod"
-            - "/opt/config.json"
           resources:
 {{ include "common.resources" . | indent 12 }}
           # disable liveness probe when breakpoints set in debugger
@@ -84,12 +91,21 @@ spec:
             - name: {{  include "common.fullname" . }}-sch-config
               mountPath: /opt/config.json
               subPath: config.json
+            # NOTE: This is tied to the PATH_TO_CACERT env variable
+            - mountPath: /opt/cert/
+              name: tls-info
           env:
             - name: CONSUL_HOST
               value: consul.{{ include "common.namespace" . }}
+            - name: PATH_TO_CACERT
+              value: "/opt/cert/cacert.pem"
+            - name: SCH_ARGS
+              value: "prod /opt/config.json"
       volumes:
         - name: {{ include "common.fullname" . }}-sch-config
           configMap:
             name: {{ include "common.fullname" . }}-configmap
+        - emptyDir: {}
+          name: tls-info
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index dd98516..0b88a65 100644 (file)
@@ -24,6 +24,8 @@ global:
   readinessImage: readiness-check:2.0.0
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
+  tlsRepository: nexus3.onap.org:10001
+  tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3
   repositoryCred:
     user: docker
     password: docker
@@ -40,7 +42,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.servicechange-handler:1.1.5
+image: onap/org.onap.dcaegen2.platform.servicechange-handler:1.3.2
 
 pullPolicy: Always
 
index fae2fe2..ad039c2 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 810e863..669b9a0 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP DMaaP components
 name: dmaap
-version: 4.0.1
+version: 5.0.0
\ No newline at end of file
index 37862dc..05389d3 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: a Helm chart to deploy ONAP DMaaP Bus Controller (aka dmaap-bc) in Kubernetes
 name: dmaap-bc
-version: 4.0.0
+version: 5.0.0
index ff249ee..66da1c5 100644 (file)
@@ -14,9 +14,9 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: postgres
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: PG.enabled
index 44bf9df..eac85ac 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP DMaaP Data Router Node Server
 name: dmaap-dr-node
-version: 4.0.0
+version: 5.0.0
index 0b61906..3b3cf9a 100644 (file)
@@ -20,5 +20,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh
deleted file mode 100644 (file)
index 1289eca..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-
-dr_prov_url="{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.internalPort2}}"
-ct_header="Content-Type:application/vnd.dmaap-dr.feed"
-obo_header="X-DMAAP-DR-ON-BEHALF-OF:dradmin"
-feed_payload=/opt/app/datartr/etc/dedicatedFeed.json
-
-sleep 20
-
-if curl -k https://${dr_prov_url}/internal/prov | awk 'BEGIN{ORS=""} {print}' | egrep "\"feeds\":\s+\[\]"; then
-   curl -X POST -H ${ct_header} -H ${obo_header} --data-ascii @${feed_payload} --post301 --location-trusted -k https://${dr_prov_url};
-else
-   echo "NO feed creation required";
-fi
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json
deleted file mode 100644 (file)
index a96f46d..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-{
-  "name": "Default PM Feed",
-  "version": "m1.0",
-  "description": "Default feed provisioned for PM File collector",
-  "business_description": "Default Feed",
-  "suspend": false,
-  "deleted": false,
-  "changeowner": true,
-  "authorization": {
-    "classification": "unclassified",
-    "endpoint_addrs": [],
-    "endpoint_ids": [
-      {
-        "password": "dradmin",
-        "id": "dradmin"
-      }]
-  }
-}
\ No newline at end of file
index f1cf739..e0cb1dd 100644 (file)
@@ -16,6 +16,7 @@
 # SPDX-License-Identifier: Apache-2.0
 # ============LICENSE_END=========================================================
 
+# dmaap-dr-node filebeat.yml
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
@@ -24,7 +25,6 @@ filebeat.prospectors:
     - /var/log/onap/*/*/*/*.log
     - /var/log/onap/*/*/*.log
     - /var/log/onap/*/*.log
-    - /opt/app/datartr/logs/*.log
   #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
   ignore_older: 48h
   # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
@@ -40,7 +40,7 @@ output.logstash:
   #List of logstash server ip addresses with port number.
   #But, in our case, this will be the loadbalancer IP address.
   #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
-  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  hosts: ["{{.Values.global.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.global.logstashPort}}"]
   #If enable will do load balancing among available Logstash, automatically.
   loadbalance: true
 
index 25a2c6e..ba247e1 100644 (file)
   SPDX-License-Identifier: Apache-2.0
   ============LICENSE_END=========================================================
 -->
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
 
-  <property name="generalLogName" value="apicalls" />
-  <property name="errorLogName" value="errors" />
-  <property name="jettyAndNodeLogName" value="node"/>
+  <property name="logDir" value="/var/log/onap/datarouter" />
+  <!--  log file names -->
+  <property name="auditLog" value="audit" />
+  <property name="errorLog" value="error" />
+  <property name="debugLog" value="debug" />
+  <property name="metricsLog" value="metrics" />
+  <property name="jettyLog" value="jetty" />
 
-  <property name="defaultPattern"    value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
-  <property name="jettyAndNodeLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
-  <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
-
-  <property name="logDirectory" value="/opt/app/datartr/logs" />
+  <!--  log file names -->
+  <property name="defaultPattern"    value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}%n|%msg%n" />
+  <property name="logDirectory" value="${logDir}" />
 
+  <!-- Example evaluator filter applied against console appender -->
   <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
     <encoder>
       <pattern>${defaultPattern}</pattern>
   <!-- EELF Appenders -->
   <!-- ============================================================================ -->
 
-  <appender name="EELF"
+  <!-- The EELFAppender is used to record events to the general application
+    log -->
+
+
+  <appender name="Audit"
     class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${generalLogName}.log</file>
-     <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>INFO</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
+    <file>${logDirectory}/${auditLog}.log</file>
+     <filter class="org.onap.dmaap.datarouter.node.eelf.AuditFilter">
     </filter>
     <rollingPolicy
       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
+      <fileNamePattern>${logDirectory}/${auditLog}.%i.log.zip
       </fileNamePattern>
       <minIndex>1</minIndex>
       <maxIndex>9</maxIndex>
     </rollingPolicy>
     <triggeringPolicy
       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
+      <maxFileSize>50MB</maxFileSize>
+    </triggeringPolicy>
+    <encoder>
+      <pattern>${defaultPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncAudit" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="Audit" />
+  </appender>
+
+    <!-- ============================================================================ -->
+
+  <appender name="Metrics"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${metricsLog}.log</file>
+    <filter class="org.onap.dmaap.datarouter.node.eelf.MetricsFilter">
+    </filter>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+      <fileNamePattern>${logDirectory}/${metricsLog}.%i.log.zip
+      </fileNamePattern>
+      <minIndex>1</minIndex>
+      <maxIndex>9</maxIndex>
+    </rollingPolicy>
+    <triggeringPolicy
+            class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+      <maxFileSize>50MB</maxFileSize>
     </triggeringPolicy>
     <encoder>
       <pattern>${defaultPattern}</pattern>
     </encoder>
   </appender>
 
-  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+  <appender name="asyncMetrics" class="ch.qos.logback.classic.AsyncAppender">
     <queueSize>256</queueSize>
-    <appender-ref ref="EELF" />
+    <appender-ref ref="Metrics" />
   </appender>
 
-  <appender name="EELFError"
+  <!-- ============================================================================ -->
+
+
+  <appender name="Debug"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${debugLog}.log</file>
+    <filter class="org.onap.dmaap.datarouter.node.eelf.DebugFilter">
+    </filter>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+      <fileNamePattern>${logDirectory}/${debugLog}.%i.log.zip
+      </fileNamePattern>
+      <minIndex>1</minIndex>
+      <maxIndex>9</maxIndex>
+    </rollingPolicy>
+    <triggeringPolicy
+            class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+      <maxFileSize>50MB</maxFileSize>
+    </triggeringPolicy>
+    <encoder>
+      <pattern>${defaultPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncDebug" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="Debug" />
+  </appender>
+
+  <!-- ============================================================================ -->
+
+  <appender name="Error"
     class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${errorLogName}.log</file>
-    <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>ERROR</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
+    <file>${logDirectory}/${errorLog}.log</file>
+    <filter class="org.onap.dmaap.datarouter.node.eelf.ErrorFilter">
     </filter>
     <rollingPolicy
       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
+      <fileNamePattern>${logDirectory}/${errorLog}.%i.log.zip
       </fileNamePattern>
       <minIndex>1</minIndex>
       <maxIndex>9</maxIndex>
     </rollingPolicy>
     <triggeringPolicy
       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
+      <maxFileSize>50MB</maxFileSize>
     </triggeringPolicy>
     <encoder>
       <pattern>${defaultPattern}</pattern>
     </encoder>
   </appender>
 
-  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+  <appender name="asyncError" class="ch.qos.logback.classic.AsyncAppender">
     <queueSize>256</queueSize>
-    <appender-ref ref="EELFError"/>
+    <appender-ref ref="Error"/>
   </appender>
 
   <!-- ============================================================================ -->
-   <appender name="jettyAndNodelog"
+   <appender name="Jetty"
     class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${jettyAndNodeLogName}.log</file>
-     <filter class="org.onap.dmaap.datarouter.node.eelf.EELFFilter" />
+    <file>${logDirectory}/${jettyLog}.log</file>
+     <filter class="org.onap.dmaap.datarouter.node.eelf.JettyFilter" />
     <rollingPolicy
       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${jettyAndNodeLogName}.%i.log.zip
+      <fileNamePattern>${logDirectory}/${jettyLog}.%i.log.zip
       </fileNamePattern>
       <minIndex>1</minIndex>
       <maxIndex>9</maxIndex>
     </rollingPolicy>
     <triggeringPolicy
       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
+      <maxFileSize>50MB</maxFileSize>
     </triggeringPolicy>
     <encoder>
-      <pattern>${jettyAndNodeLoggerPattern}</pattern>
+      <pattern>${defaultPattern}</pattern>
     </encoder>
   </appender>
 
-  <appender name="asyncEELFjettyAndNodelog" class="ch.qos.logback.classic.AsyncAppender">
+  <appender name="asyncJettyLog" class="ch.qos.logback.classic.AsyncAppender">
     <queueSize>256</queueSize>
-    <appender-ref ref="jettyAndNodelog" />
+    <appender-ref ref="Jetty" />
     <includeCallerData>true</includeCallerData>
   </appender>
 
+   <!-- ============================================================================ -->
+
+
   <!-- ============================================================================ -->
   <!--  EELF loggers -->
   <!-- ============================================================================ -->
   <logger name="com.att.eelf" level="info" additivity="false">
-    <appender-ref ref="asyncEELF" />
+    <appender-ref ref="asyncAudit" />
+  </logger>
+
+  <logger name="com.att.eelf" additivity="false">
+    <appender-ref ref="asyncMetrics" />
+  </logger>
+
+  <logger name="com.att.eelf" additivity="false">
+    <appender-ref ref="asyncDebug" />
   </logger>
 
-     <logger name="com.att.eelf.error" level="error" additivity="false">
-          <appender-ref ref="asyncEELFError" />
-      </logger>
+  <logger name="com.att.eelf.error" additivity="false">
+    <appender-ref ref="asyncError" />
+  </logger>
+
+  <logger name="log4j.logger.org.eclipse.jetty" additivity="false">
+    <appender-ref ref="asyncJettyLog"/>
+  </logger>
 
-     <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
-        <appender-ref ref="asyncEELFjettyAndNodelog"/>
-    </logger>
 
   <root level="INFO">
-    <appender-ref ref="asyncEELF" />
-    <appender-ref ref="asyncEELFError" />
-     <appender-ref ref="asyncEELFjettyAndNodelog" />
+    <appender-ref ref="asyncAudit" />
+    <appender-ref ref="asyncMetrics" />
+    <appender-ref ref="asyncDebug" />
+    <appender-ref ref="asyncError" />
+    <appender-ref ref="asyncJettyLog" />
   </root>
 
-</configuration>
+</configuration>
\ No newline at end of file
index 5de5fc1..4379dfb 100644 (file)
 #    URL to retrieve dynamic configuration
 #
 #ProvisioningURL:    ${DRTR_PROV_INTURL}
-ProvisioningURL=https://{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.externalPort2}}/internal/prov
+ProvisioningURL=https://{{ .Values.global.dmaapDrProvName }}:{{ .Values.global.dmaapDrProvExtPort2 }}/internal/prov
 
 #
 #    URL to upload PUB/DEL/EXP logs
 #
 #LogUploadURL:    ${DRTR_LOG_URL}
-LogUploadURL=https://{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.externalPort2}}/internal/logs
+LogUploadURL=https://{{ .Values.global.dmaapDrProvName }}:{{ .Values.global.dmaapDrProvExtPort2 }}/internal/logs
 
 #
 #    The port number for http as seen within the server
index a3882bc..5c581be 100644 (file)
@@ -27,19 +27,6 @@ data:
 ---
 apiVersion: v1
 kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-create-feed-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/feeds/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log
   namespace: {{ include "common.namespace" . }}
@@ -62,7 +49,7 @@ data:
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+  name: {{ include "common.fullname" . }}-dmaap-dr-node-filebeat-configmap
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
index a508886..a190d0d 100644 (file)
@@ -81,23 +81,17 @@ spec:
           - mountPath: /etc/localtime
             name: localtime
             readOnly: false
-          - mountPath: /opt/app/datartr/etc/dedicatedFeed.json
-            name: {{ include "common.fullname" . }}-create-feed-config
-            subPath: dedicatedFeed.json
-          - mountPath: /opt/app/datartr/etc/createFeed.sh
-            name: {{ include "common.fullname" . }}-create-feed-config
-            subPath: createFeed.sh
           - mountPath: /opt/app/datartr/etc/node.properties
             name: {{ include "common.fullname" . }}-config
             subPath: node.properties
           - mountPath: /opt/app/datartr/etc/drNodeCadi.properties
             name: {{ include "common.fullname" . }}-config
             subPath: drNodeCadi.properties
-          lifecycle:
-            postStart:
-              exec:
-                command:
-                  - /opt/app/datartr/etc/createFeed.sh
+          - mountPath: /opt/app/datartr/etc/logback.xml
+            name: {{ include "common.fullname" . }}-log-conf
+            subPath: logback.xml
+          - mountPath: {{ .Values.global.loggingDirectory }}
+            name: {{ include "common.fullname" . }}-logs
           resources:
 {{ include "common.resources" . | indent 12 }}
         {{- if .Values.nodeSelector }}
@@ -118,7 +112,7 @@ spec:
             subPath: filebeat.yml
           - name: {{ include "common.fullname" . }}-data-filebeat
             mountPath: /usr/share/filebeat/data
-          - name: {{ include "common.fullname" . }}-event-logs-pvc
+          - name: {{ include "common.fullname" . }}-logs
             mountPath: /var/log/onap/datarouter-node
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
@@ -126,15 +120,6 @@ spec:
         - name: localtime
           hostPath:
             path: /etc/localtime
-        - name: {{ include "common.fullname" . }}-create-feed-config
-          configMap:
-            name: {{ include "common.fullname" . }}-create-feed-configmap
-            defaultMode: 0755
-            items:
-            - key: createFeed.sh
-              path: createFeed.sh
-            - key: dedicatedFeed.json
-              path: dedicatedFeed.json
         - name: {{ include "common.fullname" . }}-config
           configMap:
             name: {{ include "common.fullname" . }}-configmap
@@ -148,11 +133,13 @@ spec:
             name: {{ include "common.fullname" . }}-log
         - name: {{ include "common.fullname" . }}-filebeat-conf
           configMap:
-            name: {{ .Release.Name }}-dmaap-filebeat-configmap
+            name: {{ include "common.fullname" . }}-dmaap-dr-node-filebeat-configmap
         - name: {{ include "common.fullname" . }}-data-filebeat
           emptyDir: {}
         - name:  {{ include "common.fullname" . }}-event-logs-pvc
           emptyDir: {}
+        - name:  {{ include "common.fullname" . }}-logs
+          emptyDir: {}
   volumeClaimTemplates:
   - metadata:
       name: {{ include "common.fullname" . }}-spool-data-pvc
index 154018a..723d977 100644 (file)
 # Global configuration defaults.
 #################################################################
 global:
-  nodePortPrefixExt: 304
-  readinessRepository: oomk8s
-  readinessImage: readiness-check:2.0.0
-  loggingRepository: docker.elastic.co
-  loggingImage: beats/filebeat:5.5.0
-  loggingDirectory: /opt/app/datartr/logs
+  loggingDirectory: /var/log/onap/datarouter
   busyBoxImage: busybox:1.30
   busyBoxRepository: docker.io
 
@@ -29,8 +24,7 @@ global:
 # Application configuration defaults.
 #################################################################
 # application image
-repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-node:2.1.0
+image: onap/dmaap/datarouter-node:2.1.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -107,9 +101,3 @@ config:
     portName2: dr-node-port2
     nodePort: 93
     nodePort2: 94
-
-# dr provisioning server configuration
-  dmaapDrProv:
-    name: dmaap-dr-prov
-    externalPort2: 8443
-    internalPort2: 8443
index fd9a51a..4457ee5 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP DMaaP Data Router Provisioning Server
 name: dmaap-dr-prov
-version: 4.0.0
+version: 5.0.0
index 949b5bb..8af1edb 100644 (file)
@@ -20,9 +20,9 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: mariadb-galera
     alias: mariadb
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index f1cf739..db02b21 100644 (file)
@@ -16,6 +16,7 @@
 # SPDX-License-Identifier: Apache-2.0
 # ============LICENSE_END=========================================================
 
+# dmaap-dr-prov filebeat.yml
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
@@ -40,7 +41,7 @@ output.logstash:
   #List of logstash server ip addresses with port number.
   #But, in our case, this will be the loadbalancer IP address.
   #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
-  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  hosts: ["{{.Values.global.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.global.logstashPort}}"]
   #If enable will do load balancing among available Logstash, automatically.
   loadbalance: true
 
index 942d898..f67b1cf 100644 (file)
   ============LICENSE_END=========================================================
 -->
 <configuration scan="true" scanPeriod="3 seconds" debug="true">
+    <!--<jmxConfigurator /> -->
+    <!-- directory path for all other type logs -->
+    <!-- property name="logDir" value="/home/eby/dr2/logs" / -->
+    <property name="logDir" value="/opt/app/datartr/logs" />
 
-  <property name="generalLogName" value="apicalls" />
-  <property name="errorLogName" value="errors" />
-  <property name="jettyLogName" value="jetty"/>
-
-  <property name="defaultPattern"    value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
-  <property name="jettyLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
-  <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
-
-  <property name="logDirectory" value="/opt/app/datartr/logs" />
-
-  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-    <encoder>
-      <pattern>${defaultPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <!-- ============================================================================ -->
-  <!-- EELF Appenders -->
-  <!-- ============================================================================ -->
-
-  <appender name="EELF"
-    class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${generalLogName}.log</file>
-     <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>INFO</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
-    </filter>
-    <rollingPolicy
-      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
-      </fileNamePattern>
-      <minIndex>1</minIndex>
-      <maxIndex>9</maxIndex>
-    </rollingPolicy>
-    <triggeringPolicy
-      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
-    </triggeringPolicy>
-    <encoder>
-      <pattern>${defaultPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="EELF" />
-  </appender>
-
-  <appender name="EELFError"
-    class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${errorLogName}.log</file>
-    <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>ERROR</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
-    </filter>
-    <rollingPolicy
-      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
-      </fileNamePattern>
-      <minIndex>1</minIndex>
-      <maxIndex>9</maxIndex>
-    </rollingPolicy>
-    <triggeringPolicy
-      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
-    </triggeringPolicy>
-    <encoder>
-      <pattern>${defaultPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="EELFError"/>
-  </appender>
-
-  <!-- ============================================================================ -->
-   <appender name="jettylog"
-    class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${jettyLogName}.log</file>
-     <filter class="org.onap.dmaap.datarouter.provisioning.eelf.JettyFilter" />
-    <rollingPolicy
-      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${jettyLogName}.%i.log.zip
-      </fileNamePattern>
-      <minIndex>1</minIndex>
-      <maxIndex>9</maxIndex>
-    </rollingPolicy>
-    <triggeringPolicy
-      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
-    </triggeringPolicy>
-    <encoder>
-      <pattern>${jettyLoggerPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <appender name="asyncEELFjettylog" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="jettylog" />
-    <includeCallerData>true</includeCallerData>
-  </appender>
-
-  <!-- ============================================================================ -->
-  <!--  EELF loggers -->
-  <!-- ============================================================================ -->
-  <logger name="com.att.eelf" level="info" additivity="false">
-    <appender-ref ref="asyncEELF" />
-  </logger>
-
-     <logger name="com.att.eelf.error" level="error" additivity="false">
-          <appender-ref ref="asyncEELFError" />
-      </logger>
-
-     <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
+    <!-- directory path for debugging type logs -->
+    <!-- property name="debugDir" value="/home/eby/dr2/debug-logs" /-->
+
+    <!--  specify the component name
+      <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC"  -->
+    <!-- This creates the MSO directory in in the LogDir which is not needed, mentioned last directory of the path-->
+    <!-- property name="componentName" value="logs"></property -->
+
+    <!--  log file names -->
+    <property name="generalLogName" value="apicalls" />
+    <!-- name="securityLogName" value="security" -->
+    <!-- name="performanceLogName" value="performance" -->
+    <!-- name="serverLogName" value="server" -->
+    <!-- name="policyLogName" value="policy"-->
+    <property name="errorLogName" value="errors" />
+    <!-- name="metricsLogName" value="metrics" -->
+    <property name="debugLogName" value="debug"/>
+    <property name="jettyLogName" value="jetty"/>
+    <property name="defaultPattern"     value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
+    <property name="jettyLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
+
+    <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
+
+    <property name="logDirectory" value="${logDir}" />
+    <!-- property name="debugLogDirectory" value="${debugDir}/${componentName}" /-->
+
+
+    <!-- Example evaluator filter applied against console appender -->
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- ============================================================================ -->
+    <!-- EELF Appenders -->
+    <!-- ============================================================================ -->
+
+    <!-- The EELFAppender is used to record events to the general application
+      log -->
+
+
+    <appender name="EELF"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${generalLogName}.log</file>
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>INFO</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="EELF" />
+    </appender>
+
+    <!-- EELF Security Appender. This appender is used to record security events
+      to the security log file. Security events are separate from other loggers
+      in EELF so that security log records can be captured and managed in a secure
+      way separate from the other logs. This appender is set to never discard any
+      events. -->
+    <!--appender name="EELFSecurity"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${securityLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+        <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+
+    <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <discardingThreshold>0</discardingThreshold>
+      <appender-ref ref="EELFSecurity" />
+    </appender-->
+
+    <!-- EELF Performance Appender. This appender is used to record performance
+      records. -->
+    <!--appender name="EELFPerformance"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${performanceLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+        <outputPatternAsHeader>true</outputPatternAsHeader>
+        <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFPerformance" />
+    </appender-->
+
+    <!-- EELF Server Appender. This appender is used to record Server related
+      logging events. The Server logger and appender are specializations of the
+      EELF application root logger and appender. This can be used to segregate Server
+      events from other components, or it can be eliminated to record these events
+      as part of the application root log. -->
+    <!--appender name="EELFServer"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${serverLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+          <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFServer" />
+    </appender-->
+
+
+    <!-- EELF Policy Appender. This appender is used to record Policy engine
+      related logging events. The Policy logger and appender are specializations
+      of the EELF application root logger and appender. This can be used to segregate
+      Policy engine events from other components, or it can be eliminated to record
+      these events as part of the application root log. -->
+    <!--appender name="EELFPolicy"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${policyLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+          <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFPolicy" >
+    </appender-->
+
+
+    <!-- EELF Audit Appender. This appender is used to record audit engine
+      related logging events. The audit logger and appender are specializations
+      of the EELF application root logger and appender. This can be used to segregate
+      Policy engine events from other components, or it can be eliminated to record
+      these events as part of the application root log. -->
+
+    <!--appender name="EELFAudit"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${auditLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+           <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFAudit" />
+    </appender-->
+
+    <!--appender name="EELFMetrics"
+        class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${metricsLogName}.log</file>
+        <rollingPolicy
+          class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+          <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip
+          </fileNamePattern>
+          <minIndex>1</minIndex>
+          <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+          class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+          <maxFileSize>5MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder-->
+    <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+      %msg%n"</pattern> -->
+    <!--pattern>${defaultPattern}</pattern>
+  </encoder>
+</appender>
+
+
+<appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+  <queueSize>256</queueSize>
+  <appender-ref ref="EELFMetrics"/>
+</appender-->
+
+    <appender name="EELFError"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${errorLogName}.log</file>
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>ERROR</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="EELFError"/>
+    </appender>
+
+    <!-- ============================================================================ -->
+    <appender name="jettylog"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${jettyLogName}.log</file>
+        <filter class="org.onap.dmaap.datarouter.provisioning.eelf.JettyFilter" />
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${jettyLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${jettyLoggerPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELFjettylog" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="jettylog" />
+        <includeCallerData>true</includeCallerData>
+    </appender>
+
+    <!-- ============================================================================ -->
+
+
+    <appender name="EELFDebug"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${debugLogName}.log</file>
+        <filter class="org.onap.dmaap.datarouter.provisioning.eelf.DebugTraceFilter" />
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${debugLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="EELFDebug" />
+        <includeCallerData>true</includeCallerData>
+    </appender>
+
+
+    <!-- ============================================================================ -->
+    <!--  EELF loggers -->
+    <!-- ============================================================================ -->
+    <logger name="com.att.eelf" level="info" additivity="false">
+        <appender-ref ref="asyncEELF" />
+    </logger>
+
+    <logger name="com.att.eelf.error" level="error" additivity="false">
+        <appender-ref ref="asyncEELFError" />
+    </logger>
+
+    <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
         <appender-ref ref="asyncEELFjettylog"/>
     </logger>
 
-  <root level="INFO">
-    <appender-ref ref="asyncEELF" />
-    <appender-ref ref="asyncEELFError" />
-     <appender-ref ref="asyncEELFjettylog" />
-  </root>
+    <logger name="com.att.eelf.debug" level="debug" additivity="false">
+        <appender-ref ref="asyncEELFDebug" />
+    </logger>
+
+    <!-- logger name="com.att.eelf.security" level="info" additivity="false">
+      <appender-ref ref="asyncEELFSecurity" />
+    </logger>
+    <logger name="com.att.eelf.perf" level="info" additivity="false">
+      <appender-ref ref="asyncEELFPerformance" />
+    </logger>
+    <logger name="com.att.eelf.server" level="info" additivity="false">
+      <appender-ref ref="asyncEELFServer" />
+    </logger>
+    <logger name="com.att.eelf.policy" level="info" additivity="false">
+      <appender-ref ref="asyncEELFPolicy" />
+    </logger>
+
+    <logger name="com.att.eelf.audit" level="info" additivity="false">
+      <appender-ref ref="asyncEELFAudit" />
+    </logger>
+
+    <logger name="com.att.eelf.metrics" level="info" additivity="false">
+          <appender-ref ref="asyncEELFMetrics" />
+    </logger>
+
+     <logger name="com.att.eelf.debug" level="debug" additivity="false">
+          <appender-ref ref="asyncEELFDebug" />
+    </logger-->
+
+
+
+
+    <root level="INFO">
+        <appender-ref ref="asyncEELF" />
+        <appender-ref ref="asyncEELFError" />
+        <appender-ref ref="asyncEELFjettylog" />
+        <appender-ref ref="asyncEELFDebug" />
+    </root>
 
-</configuration>
+</configuration>
\ No newline at end of file
index a4e96f0..52f1f3f 100644 (file)
@@ -23,8 +23,8 @@
 
 
 #Jetty Server properties
-org.onap.dmaap.datarouter.provserver.http.port           = {{.Values.config.dmaapDrProv.externalPort}}
-org.onap.dmaap.datarouter.provserver.https.port          = {{.Values.config.dmaapDrProv.externalPort2}}
+org.onap.dmaap.datarouter.provserver.http.port           = {{.Values.global.dmaapDrProvExtPort}}
+org.onap.dmaap.datarouter.provserver.https.port          = {{.Values.global.dmaapDrProvExtPort2}}
 org.onap.dmaap.datarouter.provserver.https.relaxation    = true
 
 org.onap.dmaap.datarouter.provserver.keymanager.password = FZNkU,B%NJzcT1v7;^v]M#ZX
index fe93cb0..a39cb55 100644 (file)
@@ -36,7 +36,7 @@ data:
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+  name: {{ include "common.fullname" . }}-dmaap-dr-prov-filebeat-configmap
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
index b9c144d..ea487d0 100644 (file)
@@ -29,13 +29,13 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
-      hostname: {{.Values.config.dmaapDrProv.name}}
+      hostname: {{ .Values.global.dmaapDrProvName }}
       initContainers:
       - command:
         - /root/ready.py
         args:
         - --container-name
-        - {{.Values.config.dmaapDrDb.mariadbContName}}
+        - {{ .Values.config.dmaapDrDb.mariadbContName }}
         env:
         - name: NAMESPACE
           valueFrom:
@@ -50,18 +50,18 @@ spec:
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           ports:
-          - containerPort: {{.Values.config.dmaapDrProv.externalPort}}
-          - containerPort: {{.Values.config.dmaapDrProv.externalPort2}}
+          - containerPort: {{ .Values.global.dmaapDrProvExtPort }}
+          - containerPort: {{ .Values.global.dmaapDrProvExtPort2 }}
           {{- if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{.Values.config.dmaapDrProv.externalPort}}
+              port: {{ .Values.global.dmaapDrProvExtPort }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end -}}
           readinessProbe:
             tcpSocket:
-              port: {{.Values.config.dmaapDrProv.externalPort}}
+              port: {{ .Values.global.dmaapDrProvExtPort }}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
@@ -74,6 +74,9 @@ spec:
           - mountPath: /opt/app/datartr/etc/drProvCadi.properties
             name: {{ include "common.fullname" . }}-config
             subPath: drProvCadi.properties
+          - mountPath: /opt/app/datartr/etc/logback.xml
+            name: {{ include "common.fullname" . }}-log-conf
+            subPath: logback.xml
           - mountPath: {{ .Values.global.loggingDirectory }}
             name: {{ include "common.fullname" . }}-logs
           resources:
@@ -115,7 +118,7 @@ spec:
           name: {{ include "common.fullname" . }}-log
       - name: {{ include "common.fullname" . }}-filebeat-conf
         configMap:
-          name: {{ .Release.Name }}-dmaap-filebeat-configmap
+          name: {{ include "common.fullname" . }}-dmaap-dr-prov-filebeat-configmap
       - name: {{ include "common.fullname" . }}-data-filebeat
         emptyDir: {}
       - name:  {{ include "common.fullname" . }}-logs
index 0b40389..7a94fdb 100644 (file)
@@ -15,7 +15,7 @@
 apiVersion: v1
 kind: Service
 metadata:
-  name: {{.Values.config.dmaapDrProv.name}}
+  name: {{ .Values.global.dmaapDrProvName }}
   namespace: {{ include "common.namespace" . }}
   labels:
     app: {{ include "common.name" . }}
@@ -26,36 +26,36 @@ metadata:
     service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
     msb.onap.org/service-info: '[
       {
-          "serviceName": "{{.Values.config.dmaapDrProv.name}}",
+          "serviceName": "{{ .Values.global.dmaapDrProvName }}",
           "version": "v1",
           "url": "/",
           "protocol": "REST",
-          "port": "{{.Values.config.dmaapDrProv.externalPort2}}",
+          "port": "{{ .Values.global.dmaapDrProvExtPort2 }}",
           "visualRange":"1"
       }
       ]'
 
 spec:
-  type: {{.Values.config.dmaapDrProv.servicetype}}
+  type: {{ .Values.config.dmaapDrProv.servicetype }}
   ports:
-    {{- if eq .Values.config.dmaapDrProv.servicetype "NodePort" }}
+    {{if eq .Values.config.dmaapDrProv.servicetype "NodePort" -}}
     {{- if .Values.global.allow_http }}
-    - port: {{.Values.config.dmaapDrProv.externalPort}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort}}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrProv.nodePort}}
-      name: {{.Values.config.dmaapDrProv.name}}
+    - port: {{ .Values.global.dmaapDrProvExtPort }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.config.dmaapDrProv.nodePort }}
+      name: {{ .Values.config.dmaapDrProv.portName }}
     {{- end}}
-    - port: {{.Values.config.dmaapDrProv.externalPort2}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort2}}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrProv.nodePort2}}
-      name: {{.Values.config.dmaapDrProv.name}}2
+    - port: {{ .Values.global.dmaapDrProvExtPort2 }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort2 }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.config.dmaapDrProv.nodePort2 }}
+      name: {{ .Values.config.dmaapDrProv.portName }}2
     {{- else -}}
-    - port: {{.Values.config.dmaapDrProv.externalPort}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort}}
-      name: {{.Values.config.dmaapDrProv.name}}
-    - port: {{.Values.config.dmaapDrProv.externalPort2}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort2}}
-      name: {{.Values.config.dmaapDrProv.name}}2
+    - port: {{ .Values.global.dmaapDrProvExtPort }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort }}
+      name: {{ .Values.config.dmaapDrProv.portName }}
+    - port: {{ .Values.global.dmaapDrProvExtPort2 }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort2 }}
+      name: {{ .Values.config.dmaapDrProv.portName }}2
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
index 39977f8..aca2c83 100644 (file)
 #################################################################
 global:
   nodePortPrefix: 302
-  readinessRepository: oomk8s
-  readinessImage: readiness-check:2.0.0
-  loggingRepository: docker.elastic.co
-  loggingImage: beats/filebeat:5.5.0
   loggingDirectory: /opt/app/datartr/logs
 
 #################################################################
 # Application configuration defaults.
 #################################################################
 # application image
-repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-prov:2.1.0
+image: onap/dmaap/datarouter-prov:2.1.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -86,9 +81,6 @@ config:
   # dr provisioning server configuration
   dmaapDrProv:
     servicetype: NodePort
-    name: dmaap-dr-prov
-    externalPort: 8080
-    externalPort2: 8443
     internalPort: 8080
     internalPort2: 8443
     portName: dr-prov-port
index 1a05378..87ae24e 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Message Router
 name: message-router
-version: 4.0.0
+version: 5.0.0
diff --git a/kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/cadi.properties b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/cadi.properties
new file mode 100644 (file)
index 0000000..1e7d7d3
--- /dev/null
@@ -0,0 +1,19 @@
+aaf_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.service:2.1
+aaf_env=DEV
+aaf_lur=org.onap.aaf.cadi.aaf.v2_0.AAFLurPerm
+
+cadi_truststore=/opt/kafka/config/org.onap.dmaap.mr.trust.jks
+cadi_truststore_password=enc:gvXm0E9p-_SRNw5_feOUE7wqXBxgxV3S_bdAyB08Sq9F35cCUZHWgQyKIDtTAbEw
+
+cadi_keyfile=/opt/kafka/config/org.onap.dmaap.mr.keyfile
+
+cadi_alias=dmaapmr@mr.dmaap.onap.org
+cadi_keystore=/opt/kafka/config/org.onap.dmaap.mr.p12
+cadi_keystore_password=enc:pLMCzQzk-OP7IpYNi0TPtQSkNcraFAdarZG8HbdOKq4BycW6g_7mfhphLhOZo6ht
+cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_9, OU=OSAAF, O=ONAP, C=US
+
+
+cadi_loglevel=INFO
+cadi_protocols=TLSv1.1,TLSv1.2
+cadi_latitude=37.78187
+cadi_longitude=-122.26147
\ No newline at end of file
diff --git a/kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/log4j.properties b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/log4j.properties
new file mode 100644 (file)
index 0000000..8e20fa4
--- /dev/null
@@ -0,0 +1,74 @@
+log4j.rootLogger=INFO, stdout, kafkaAppender
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+log4j.appender.kafkaAppender=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.kafkaAppender.DatePattern='.'yyyy-MM-dd-HH
+log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
+log4j.appender.kafkaAppender.layout=org.apache.log4j.PatternLayout
+log4j.appender.kafkaAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+log4j.appender.stateChangeAppender=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.stateChangeAppender.DatePattern='.'yyyy-MM-dd-HH
+log4j.appender.stateChangeAppender.File=${kafka.logs.dir}/state-change.log
+log4j.appender.stateChangeAppender.layout=org.apache.log4j.PatternLayout
+log4j.appender.stateChangeAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+log4j.appender.requestAppender=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.requestAppender.DatePattern='.'yyyy-MM-dd-HH
+log4j.appender.requestAppender.File=${kafka.logs.dir}/kafka-request.log
+log4j.appender.requestAppender.layout=org.apache.log4j.PatternLayout
+log4j.appender.requestAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+log4j.appender.cleanerAppender=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.cleanerAppender.DatePattern='.'yyyy-MM-dd-HH
+log4j.appender.cleanerAppender.File=${kafka.logs.dir}/log-cleaner.log
+log4j.appender.cleanerAppender.layout=org.apache.log4j.PatternLayout
+log4j.appender.cleanerAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+log4j.appender.controllerAppender=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.controllerAppender.DatePattern='.'yyyy-MM-dd-HH
+log4j.appender.controllerAppender.File=${kafka.logs.dir}/controller.log
+log4j.appender.controllerAppender.layout=org.apache.log4j.PatternLayout
+log4j.appender.controllerAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+log4j.appender.authorizerAppender=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.authorizerAppender.DatePattern='.'yyyy-MM-dd-HH
+log4j.appender.authorizerAppender.File=${kafka.logs.dir}/kafka-authorizer.log
+log4j.appender.authorizerAppender.layout=org.apache.log4j.PatternLayout
+log4j.appender.authorizerAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
+
+# Change the two lines below to adjust ZK client logging
+log4j.logger.org.I0Itec.zkclient.ZkClient=INFO
+log4j.logger.org.apache.zookeeper=INFO
+
+# Change the two lines below to adjust the general broker logging level (output to server.log and stdout)
+log4j.logger.kafka=INFO
+log4j.logger.org.apache.kafka=INFO
+
+# Change to DEBUG or TRACE to enable request logging
+log4j.logger.kafka.request.logger=WARN, requestAppender
+log4j.additivity.kafka.request.logger=false
+
+# Uncomment the lines below and change log4j.logger.kafka.network.RequestChannel$ to TRACE for additional output
+# related to the handling of requests
+#log4j.logger.kafka.network.Processor=TRACE, requestAppender
+#log4j.logger.kafka.server.KafkaApis=TRACE, requestAppender
+#log4j.additivity.kafka.server.KafkaApis=false
+log4j.logger.kafka.network.RequestChannel$=WARN, requestAppender
+log4j.additivity.kafka.network.RequestChannel$=false
+
+log4j.logger.kafka.controller=TRACE, controllerAppender
+log4j.additivity.kafka.controller=false
+
+log4j.logger.kafka.log.LogCleaner=INFO, cleanerAppender
+log4j.additivity.kafka.log.LogCleaner=false
+
+log4j.logger.state.change.logger=TRACE, stateChangeAppender
+log4j.additivity.state.change.logger=false
+
+# Access denials are logged at INFO level, change to DEBUG to also log allowed accesses
+log4j.logger.kafka.authorizer.logger=INFO, authorizerAppender
+log4j.additivity.kafka.authorizer.logger=false
diff --git a/kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/server.properties b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/resources/config/server.properties
new file mode 100644 (file)
index 0000000..4834116
--- /dev/null
@@ -0,0 +1,122 @@
+############################# Socket Server Settings #############################
+
+# The address the socket server listens on. It will get the value returned from
+# java.net.InetAddress.getCanonicalHostName() if not configured.
+#   FORMAT:
+#     listeners = listener_name://host_name:port
+#   EXAMPLE:
+#     listeners = PLAINTEXT://your.host.name:9092
+listeners=EXTERNAL_SASL_PLAINTEXT://0.0.0.0:9093,INTERNAL_SASL_PLAINTEXT://0.0.0.0:9092
+
+# Maps listener names to security protocols, the default is for them to be the same. See the config documentation for more details
+listener.security.protocol.map=INTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT,EXTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT
+
+# The number of threads that the server uses for receiving requests from the network and sending responses to the network
+num.network.threads=3
+
+# The number of threads that the server uses for processing requests, which may include disk I/O
+num.io.threads=8
+
+# The send buffer (SO_SNDBUF) used by the socket server
+socket.send.buffer.bytes=102400
+
+#The number of hours to keep a log file before deleting it
+log.retention.hours=168
+#The maximum size of the log before deleting it
+log.retention.bytes=21474836480
+
+# The receive buffer (SO_RCVBUF) used by the socket server
+socket.receive.buffer.bytes=102400
+
+# The maximum size of a request that the socket server will accept (protection against OOM)
+socket.request.max.bytes=104857600
+
+
+############################# Log Basics #############################
+
+# A comma separated list of directories under which to store log files
+log.dirs=/opt/kafka/data
+
+# The default number of log partitions per topic. More partitions allow greater
+# parallelism for consumption, but this will also result in more files across
+# the brokers.
+num.partitions={{ .Values.defaultpartitions }}
+
+# The number of threads per data directory to be used for log recovery at startup and flushing at shutdown.
+# This value is recommended to be increased for installations with data dirs located in RAID array.
+num.recovery.threads.per.data.dir=1
+
+############################# Internal Topic Settings  #############################
+# The replication factor for the group metadata internal topics "__consumer_offsets" and "__transaction_state"
+# For anything other than development testing, a value greater than 1 is recommended for to ensure availability such as 3.
+offsets.topic.replication.factor={{ .Values.replicaCount }}
+transaction.state.log.replication.factor=1
+transaction.state.log.min.isr=1
+
+############################# Log Flush Policy #############################
+
+# Messages are immediately written to the filesystem but by default we only fsync() to sync
+# the OS cache lazily. The following configurations control the flush of data to disk.
+# There are a few important trade-offs here:
+#    1. Durability: Unflushed data may be lost if you are not using replication.
+#    2. Latency: Very large flush intervals may lead to latency spikes when the flush does occur as there will be a lot of data to flush.
+#    3. Throughput: The flush is generally the most expensive operation, and a small flush interval may lead to excessive seeks.
+# The settings below allow one to configure the flush policy to flush data after a period of time or
+# every N messages (or both). This can be done globally and overridden on a per-topic basis.
+
+# The number of messages to accept before forcing a flush of data to disk
+#log.flush.interval.messages=10000
+
+# The maximum amount of time a message can sit in a log before we force a flush
+#log.flush.interval.ms=1000
+
+############################# Log Retention Policy #############################
+
+# The following configurations control the disposal of log segments. The policy can
+# be set to delete segments after a period of time, or after a given size has accumulated.
+# A segment will be deleted whenever *either* of these criteria are met. Deletion always happens
+# from the end of the log.
+
+# The minimum age of a log file to be eligible for deletion due to age
+log.retention.hours=168
+
+# A size-based retention policy for logs. Segments are pruned from the log unless the remaining
+# segments drop below log.retention.bytes. Functions independently of log.retention.hours.
+#log.retention.bytes=1073741824
+
+# The maximum size of a log segment file. When this size is reached a new log segment will be created.
+log.segment.bytes=1073741824
+
+# The interval at which log segments are checked to see if they can be deleted according
+# to the retention policies
+log.retention.check.interval.ms=300000
+
+############################# Zookeeper #############################
+
+# Zookeeper connection string (see zookeeper docs for details).
+# This is a comma separated host:port pairs, each corresponding to a zk
+# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
+# You can also append an optional chroot string to the urls to specify the
+# root directory for all kafka znodes.
+zookeeper.connect={{.Release.Name}}-{{.Values.zookeeper.name}}-0.{{.Values.zookeeper.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.zookeeper.port}},{{.Release.Name}}-{{.Values.zookeeper.name}}-1.{{.Values.zookeeper.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.zookeeper.port}},{{.Release.Name}}-{{.Values.zookeeper.name}}-2.{{.Values.zookeeper.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.zookeeper.port}}
+
+# Timeout in ms for connecting to zookeeper
+zookeeper.connection.timeout.ms=6000
+
+
+############################# Group Coordinator Settings #############################
+
+# The following configuration specifies the time, in milliseconds, that the GroupCoordinator will delay the initial consumer rebalance.
+# The rebalance will be further delayed by the value of group.initial.rebalance.delay.ms as new members join the group, up to a maximum of max.poll.interval.ms.
+# The default value for this is 3 seconds.
+# We override this to 0 here as it makes for a better out-of-the-box experience for development and testing.
+# However, in production environments the default value of 3 seconds is more suitable as this will help to avoid unnecessary, and potentially expensive, rebalances during application startup.
+group.initial.rebalance.delay.ms=0
+
+inter.broker.listener.name=INTERNAL_SASL_PLAINTEXT
+default.replication.factor={{ .Values.replicaCount }}
+delete.topic.enable=true
+sasl.enabled.mechanisms=PLAIN
+authorizer.class.name=org.onap.dmaap.kafkaAuthorize.KafkaCustomAuthorizer
+version=1.1.1
+sasl.mechanism.inter.broker.protocol=PLAIN
diff --git a/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/configmap.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..f9900f6
--- /dev/null
@@ -0,0 +1,55 @@
+# Copyright © 2019 AT&T
+#
+# 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" . }}-server-prop-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/server.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-cadi-prop-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/cadi.properties").AsConfig . | indent 2 }}
+---
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-log4j-prop-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/log4j.properties").AsConfig . | indent 2 }}
+---
+
index 5e96423..bfe4b11 100644 (file)
@@ -75,11 +75,20 @@ spec:
         - -exec
         - |
           chown -R 1000:1000 /opt/kafka/data;
+          cp /opt/kafka/tmpconfig/server.properties /opt/kafka/config/;
+          chown 1000:1000 /opt/kafka/config/server.properties;
+          cd /opt/kafka/config;
+          ls;
         image: "{{ .Values.busyBoxRepository }}/{{ .Values.busyBoxImage }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - mountPath: /opt/kafka/data
           name: kafka-data
+        - mountPath: /opt/kafka/tmpconfig/server.properties
+          subPath: server.properties
+          name: server
+        - mountPath: /opt/kafka/config
+          name: config-data
         name: {{ include "common.name" . }}-permission-fixer
       containers:
       - name: {{ include "common.name" .  }}
@@ -116,38 +125,27 @@ spec:
             fieldRef:
               apiVersion: v1
               fieldPath: status.hostIP
-        - name: KAFKA_ZOOKEEPER_CONNECT
-          value: "{{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}"
-        - name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
-          value: "INTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT,EXTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT"
-        - name: KAFKA_LISTENERS
-          value: "EXTERNAL_SASL_PLAINTEXT://0.0.0.0:{{ .Values.service.externalPort }},INTERNAL_SASL_PLAINTEXT://0.0.0.0:{{ .Values.service.internalPort }}"
-        - name: KAFKA_INTER_BROKER_LISTENER_NAME
-          value: "INTERNAL_SASL_PLAINTEXT"
-        - name: KAFKA_SASL_ENABLED_MECHANISMS
-          value: "PLAIN"
-        - name: KAFKA_SASL_MECHANISM_INTER_BROKER_PROTOCOL
-          value: "PLAIN"
-        - name: KAFKA_AUTHORIZER_CLASS_NAME
-          value: "{{ .Values.kafkaCustomAuthorizer }}"
-        - name: KAFKA_DELETE_TOPIC_ENABLE
-          value: "{{ .Values.deleteTopicEnable }}"
         - name: aaf_locate_url
-          value: "https://aaf-locate:8095"
-        - name: KAFKA_LOG_DIRS
-          value: "/opt/kafka/data"
-        - name: KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR
-          value: "{{ .Values.replicaCount }}"
-        - name: KAFKA_DEFAULT_REPLICATION_FACTOR
-          value: "{{ .Values.replicaCount }}"
-        - name: KAFKA_NUM_PARTITIONS
-          value: "{{ .Values.defaultpartitions }}"
+          value: https://aaf-locate.{{ include "common.namespace" . }}:8095
+
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
           readOnly: true
         - mountPath: /var/run/docker.sock
           name: docker-socket
+        - mountPath: /opt/kafka/tmpconfig/server.properties
+          subPath: server.properties
+          name: server
+        - mountPath: /opt/kafka/config/server.properties
+          subPath: server.properties
+          name: config-data
+        - mountPath: /opt/kafka/config/log4j.properties
+          subPath: log4j.properties
+          name: log4j
+        - mountPath: /opt/kafka/config/cadi.properties
+          subPath: cadi.properties
+          name: cadi
         - mountPath: /opt/kafka/data
           name: kafka-data
       {{- if .Values.tolerations }}
@@ -158,9 +156,20 @@ spec:
       - name: localtime
         hostPath:
           path: /etc/localtime
+      - name: config-data
+        emptyDir: {}
       - name: docker-socket
         hostPath:
           path: /var/run/docker.sock
+      - name: server
+        configMap:
+          name: {{ include "common.fullname" . }}-server-prop-configmap
+      - name: log4j
+        configMap:
+          name: {{ include "common.fullname" . }}-log4j-prop-configmap
+      - name: cadi
+        configMap:
+          name: {{ include "common.fullname" . }}-cadi-prop-configmap
 {{ if not .Values.persistence.enabled }}
       - name: kafka-data
         emptyDir: {}
@@ -187,4 +196,4 @@ spec:
             heritage: "{{ .Release.Service }}"
 {{ end }}
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
index a13c53d..6d98d68 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 8e44661..b07eaad 100755 (executable)
@@ -36,7 +36,9 @@
 ##     Both Cambria and Kafka make use of Zookeeper.
 ##
 #config.zk.servers=172.18.1.1
-config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}
+#config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}
+config.zk.servers={{.Release.Name}}-{{.Values.zookeeper.name}}-0.{{.Values.zookeeper.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.zookeeper.port}},{{.Release.Name}}-{{.Values.zookeeper.name}}-1.{{.Values.zookeeper.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.zookeeper.port}},{{.Release.Name}}-{{.Values.zookeeper.name}}-2.{{.Values.zookeeper.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.zookeeper.port}}
+
 #config.zk.root=/fe3c/cambria/config
 
 
@@ -48,7 +50,8 @@ config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}
 ##     configurations (after removing "kafka.")
 ##     if you want to change request.required.acks it can take this one value
 #kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list={{.Values.kafka.name}}:{{.Values.kafka.port}}
+#kafka.metadata.broker.list={{.Values.kafka.name}}:{{.Values.kafka.port}}
+kafka.metadata.broker.list={{.Release.Name}}-{{.Values.kafka.name}}-0.{{.Values.kafka.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.kafka.port}},{{.Release.Name}}-{{.Values.kafka.name}}-1.{{.Values.kafka.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.kafka.port}},{{.Release.Name}}-{{.Values.kafka.name}}-2.{{.Values.kafka.name}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.kafka.port}}
 ##kafka.request.required.acks=-1
 #kafka.client.zookeeper=${config.zk.servers}
 consumer.timeout.ms=100
index 4e0b085..36dafce 100755 (executable)
@@ -1,5 +1,5 @@
-aaf_locate_url=https://aaf-locate:8095
-aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.1
+aaf_locate_url=https://aaf-locate.{{ include "common.namespace" . }}:8095
+aaf_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.service:2.1
 aaf_env=DEV
 aaf_lur=org.onap.aaf.cadi.aaf.v2_0.AAFLurPerm
 
diff --git a/kubernetes/dmaap/components/message-router/resources/config/dmaap/logback.xml b/kubernetes/dmaap/components/message-router/resources/config/dmaap/logback.xml
new file mode 100644 (file)
index 0000000..5dac1c0
--- /dev/null
@@ -0,0 +1,212 @@
+<!--
+     ============LICENSE_START=======================================================
+     Copyright © 2019 AT&T 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.
+     ============LICENSE_END=========================================================  
+ -->
+
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
+       <contextName>${module.ajsc.namespace.name}</contextName>
+       <jmxConfigurator />
+       <property name="logDirectory" value="${AJSC_HOME}/log" />
+       <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>ERROR</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <encoder>
+                       <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+                       </pattern>
+               </encoder>
+       </appender>
+
+       <appender name="INFO"
+               class="ch.qos.logback.core.ConsoleAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+       </appender>
+
+       <appender name="DEBUG" class="ch.qos.logback.core.ConsoleAppender">
+
+               <encoder>
+                       <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="ERROR" class="ch.qos.logback.core.ConsoleAppender">
+               class="ch.qos.logback.core.ConsoleAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>ERROR</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <encoder>
+                       <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+
+
+       <!-- Msgrtr related loggers -->
+       <logger name="org.onap.dmaap.dmf.mr.service" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.service.impl" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.resources" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.resources.streamReaders" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.backends" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.backends.kafka" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.backends.memory" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.beans" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.constants" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.exception" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.listener" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.metabroker" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.metrics.publisher" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.metrics.publisher.impl" level="INFO" />
+       
+       
+       
+       <logger name="org.onap.dmaap.dmf.mr.security" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.security.impl" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.transaction" level="INFO" />
+       <logger name="com.att.dmf.mr.transaction.impl" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.metabroker" level="INFO" />
+       <logger name="org.onap.dmaap.dmf.mr.metabroker" level="INFO" />
+       
+       <logger name="org.onap.dmaap.dmf.mr.utils" level="INFO" />
+       <logger name="org.onap.dmaap.mr.filter" level="INFO" /> 
+       
+       <!--<logger name="com.att.nsa.cambria.*" level="INFO" />-->
+       
+       <!-- Msgrtr loggers in ajsc -->
+       <logger name="org.onap.dmaap.service" level="INFO" />
+       <logger name="org.onap.dmaap" level="INFO" />
+       
+       
+       <!-- Spring related loggers -->
+       <logger name="org.springframework" level="WARN" additivity="false"/>
+       <logger name="org.springframework.beans" level="WARN" additivity="false"/>
+       <logger name="org.springframework.web" level="WARN" additivity="false" />
+       <logger name="com.blog.spring.jms" level="WARN" additivity="false" />
+
+       <!-- AJSC Services (bootstrap services) -->
+       <logger name="ajsc" level="WARN" additivity="false"/>
+       <logger name="ajsc.RouteMgmtService" level="INFO" additivity="false"/>
+       <logger name="ajsc.ComputeService" level="INFO" additivity="false" />
+       <logger name="ajsc.VandelayService" level="WARN" additivity="false"/>
+       <logger name="ajsc.FilePersistenceService" level="WARN" additivity="false"/>
+       <logger name="ajsc.UserDefinedJarService" level="WARN" additivity="false" />
+       <logger name="ajsc.UserDefinedBeansDefService" level="WARN" additivity="false" />
+       <logger name="ajsc.LoggingConfigurationService" level="WARN" additivity="false" />
+
+       <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet 
+               logging) -->
+       <logger name="ajsc.utils" level="WARN"  additivity="false"/>
+       <logger name="ajsc.utils.DME2Helper" level="INFO" additivity="false" />
+       <logger name="ajsc.filters" level="DEBUG" additivity="false" />
+       <logger name="ajsc.beans.interceptors" level="DEBUG" additivity="false" />
+       <logger name="ajsc.restlet" level="DEBUG" additivity="false"  />
+       <logger name="ajsc.servlet" level="DEBUG" additivity="false" />
+       <logger name="com.att" level="WARN" additivity="false"  />
+       <logger name="com.att.ajsc.csi.logging" level="WARN" additivity="false" />
+       <logger name="com.att.ajsc.filemonitor" level="WARN" additivity="false"/>
+       
+       <logger name="com.att.nsa.dmaap.util" level="INFO" additivity="false"/> 
+       <logger name="com.att.cadi.filter" level="INFO"  additivity="false" /> 
+       
+
+       <!-- Other Loggers that may help troubleshoot -->
+       <logger name="net.sf" level="WARN" additivity="false" />
+       <logger name="org.apache.commons.httpclient" level="WARN" additivity="false"/>
+       <logger name="org.apache.commons" level="WARN" additivity="false" />
+       <logger name="org.apache.coyote" level="WARN"  additivity="false"/>
+       <logger name="org.apache.jasper" level="WARN"  additivity="false"/>
+
+       <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. 
+               May aid in troubleshooting) -->
+       <logger name="org.apache.camel" level="WARN" additivity="false" />
+       <logger name="org.apache.cxf" level="WARN" additivity="false" />
+       <logger name="org.apache.camel.processor.interceptor" level="WARN"  additivity="false"/>
+       <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" additivity="false" />
+       <logger name="org.apache.cxf.service" level="WARN" additivity="false" />
+       <logger name="org.restlet" level="DEBUG" additivity="false" />
+       <logger name="org.apache.camel.component.restlet" level="DEBUG" additivity="false" />
+       <logger name="org.apache.kafka" level="DEBUG" additivity="false" />
+       <logger name="org.apache.zookeeper" level="INFO" additivity="false" />
+       <logger name="org.I0Itec.zkclient" level="DEBUG" additivity="false" />
+
+       <!-- logback internals logging -->
+       <logger name="ch.qos.logback.classic" level="INFO" additivity="false"/>
+       <logger name="ch.qos.logback.core" level="INFO" additivity="false" />
+
+       <!-- logback jms appenders & loggers definition starts here -->
+       <!-- logback jms appenders & loggers definition starts here -->
+       <appender name="auditLogs"
+               class="ch.qos.logback.core.ConsoleAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+               </filter>
+               <encoder>
+                       <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+       <appender name="perfLogs"
+               class="ch.qos.logback.core.ConsoleAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+               </filter>
+               <encoder>
+                       <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+       <appender name="ASYNC-audit" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <discardingThreshold>0</discardingThreshold>
+               <appender-ref ref="Audit-Record-Queue" />
+       </appender>
+
+       <logger name="AuditRecord" level="INFO" additivity="FALSE">
+               <appender-ref ref="STDOUT" />
+       </logger>
+       <logger name="AuditRecord_DirectCall" level="INFO" additivity="FALSE">
+               <appender-ref ref="STDOUT" />
+       </logger>
+       <appender name="ASYNC-perf" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <discardingThreshold>0</discardingThreshold>
+               <appender-ref ref="Performance-Tracker-Queue" />
+       </appender>
+       <logger name="PerfTrackerRecord" level="INFO" additivity="FALSE">
+               <appender-ref ref="ASYNC-perf" />
+               <appender-ref ref="perfLogs" />
+       </logger>
+       <!-- logback jms appenders & loggers definition ends here -->
+
+       <root level="DEBUG">
+               <appender-ref ref="DEBUG" />
+               <appender-ref ref="ERROR" />
+               <appender-ref ref="INFO" />
+               <appender-ref ref="STDOUT" />
+       </root>
+
+</configuration>
\ No newline at end of file
index e2e0da5..f84915a 100644 (file)
@@ -39,6 +39,21 @@ metadata:
 data:
 {{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
 ---
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-logback-xml-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/dmaap/logback.xml").AsConfig . | indent 2 }}
+---
+
 apiVersion: v1
 kind: ConfigMap
 metadata:
index 7bf88f5..f7b51d1 100644 (file)
@@ -76,6 +76,9 @@ spec:
           - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
             subPath: MsgRtrApi.properties
             name: appprops
+          - mountPath: /appl/dmaapMR1/bundleconfig/etc/logback.xml
+            subPath: logback.xml
+            name: logback
           - mountPath: /appl/dmaapMR1/etc/cadi.properties
             subPath: cadi.properties
             name: cadi
@@ -91,6 +94,9 @@ spec:
         - name: appprops
           configMap:
             name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
+        - name: logback
+          configMap:
+            name: {{ include "common.fullname" . }}-logback-xml-configmap
         - name: cadi
           configMap:
             name: {{ include "common.fullname" . }}-cadi-prop-configmap
index 54c8982..7561bc2 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dmaap/dmaap-mr:1.1.14
+image: onap/dmaap/dmaap-mr:1.1.16
 pullPolicy: Always
 
 kafka:
index 3507bd8..50ff259 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: message-router
-    version: ~4.x-0
+    version: ~5.x-0
     repository: 'file://components/message-router'
     condition: message-router.enabled
   - name: dmaap-bc
-    version: ~4.x-0
+    version: ~5.x-0
     repository: 'file://components/dmaap-bc'
     condition: dmaap-bc.enabled
   - name: dmaap-dr-node
-    version: ~4.x-0
+    version: ~5.x-0
     repository: 'file://components/dmaap-dr-node'
     condition: dmaap-dr-node.enabled
   - name: dmaap-dr-prov
-    version: ~4.x-0
+    version: ~5.x-0
     repository: 'file://components/dmaap-dr-prov'
     condition: dmaap-dr-prov.enabled
index f1cf739..40d2476 100644 (file)
@@ -40,7 +40,7 @@ output.logstash:
   #List of logstash server ip addresses with port number.
   #But, in our case, this will be the loadbalancer IP address.
   #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
-  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  hosts: ["{{.Values.global.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.global.logstashPort}}"]
   #If enable will do load balancing among available Logstash, automatically.
   loadbalance: true
 
index d5b7bff..89c8baa 100644 (file)
 #################################################################
 global:
   nodePortPrefix: 302
+  nodePortPrefixExt: 304
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
   clientImage: onap/dmaap/dbc-client:1.0.9
+  repository: nexus3.onap.org:10001
 
 #Global DMaaP app config
   allow_http: true
 
-# application configuration
-config:
+  #Logstash config
   logstashServiceName: log-ls
   logstashPort: 5044
 
+  #dmaap-dr-prov server configuration
+  dmaapDrProvName: dmaap-dr-prov
+  dmaapDrProvExtPort2: 8443
+  dmaapDrProvExtPort: 8080
+
+
+#Component overrides
 message-router:
   enabled: true
 dmaap-bc:
index 0f48961..79436f7 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP External System Register
 name: esr
-version: 4.0.0
+version: 5.0.0
index dfc1e26..d603877 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP External System Register GUI
 name: esr-gui
-version: 4.0.0
+version: 5.0.0
index c9718f2..66fcffc 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP External System Register GUI
 name: esr-server
-version: 4.0.0
+version: 5.0.0
index 9ebc9b9..bcc64d8 100644 (file)
@@ -14,7 +14,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index b3472d4..efb130f 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: <Short application description - this is visible via 'helm search'>
 name: <onap-app>
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 09edd37..b0a75cb 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging ElasticStack
 name: log
-version: 4.0.0
+version: 5.0.0
index b5275eb..484a8e3 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging Elasticsearch
 name: log-elasticsearch
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 2038476..0e85c91 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging Kibana
 name: log-kibana
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
diff --git a/kubernetes/log/charts/log-kibana/resources/config/README.txt b/kubernetes/log/charts/log-kibana/resources/config/README.txt
new file mode 100644 (file)
index 0000000..2863c1d
--- /dev/null
@@ -0,0 +1 @@
+"kibana-onboarding.json" file contains initial setup of Kibana obtained using Elasticdump tool.
\ No newline at end of file
diff --git a/kubernetes/log/charts/log-kibana/resources/config/kibana-onboarding.json b/kubernetes/log/charts/log-kibana/resources/config/kibana-onboarding.json
new file mode 100644 (file)
index 0000000..e69de29
index ac52f62..657dca4 100644 (file)
@@ -46,6 +46,22 @@ spec:
         image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         name: {{ include "common.name" . }}-readiness
+      - args:
+        - --input=/config/kibana-onboarding.json
+        - --output=http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}/.kibana
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.elasticdumpRepository }}/{{ .Values.elasticdumpImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-elasticdump
+        volumeMounts:
+          - mountPath: /config/kibana-onboarding.json
+            name: {{ include "common.fullname" . }}
+            subPath: kibana-onboarding.json
       containers:
         - name: {{ include "common.name" . }}
           image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
@@ -90,5 +106,7 @@ spec:
             items:
             - key: kibana.yml
               path: kibana.yml
+            - key: kibana-onboarding.json
+              path: kibana-onboarding.json
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 8a56151..5132768 100644 (file)
@@ -26,6 +26,10 @@ global:
 # Application configuration defaults.
 #################################################################
 
+# Elasticdump image
+elasticdumpRepository: docker.io
+elasticdumpImage: taskrabbit/elasticsearch-dump
+
 # BusyBox image
 busyboxRepository: registry.hub.docker.com
 busyboxImage: library/busybox:latest
index 51bf878..398a322 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging Logstash
 name: log-logstash
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index fae2fe2..ad039c2 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 5094318..526cef7 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Modeling (Modeling)
 name: modeling
-version: 4.0.0
+version: 5.0.0
index 48c0c64..d5f20be 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Modeling - Genericparser
 name: modeling-genericparser
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 71bfc00..c2c445c 100644 (file)
@@ -14,8 +14,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index a0714aa..ddd8ba4 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP MicroServices Bus
 name: msb
-version: 4.0.0
+version: 5.0.0
index 3290f4d..e0dc244 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP MicroServices Bus Kube2MSB Registrator
 name: kube2msb
-version: 4.0.0
+version: 5.0.0
index 2d2a9f0..798f2d3 100644 (file)
@@ -13,5 +13,5 @@
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index ce0088e..ccb6e3d 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP MicroServices Bus Consul
 name: msb-consul
-version: 4.0.0
+version: 5.0.0
index 2d2a9f0..798f2d3 100644 (file)
@@ -13,5 +13,5 @@
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 88e0aa6..7e1b554 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP MicroServices Bus Discovery
 name: msb-discovery
-version: 4.0.0
+version: 5.0.0
index 2d2a9f0..798f2d3 100644 (file)
@@ -13,5 +13,5 @@
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index c9f7c90..5360093 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP MicroServices Bus Internal API Gateway
 name: msb-eag
-version: 4.0.0
+version: 5.0.0
index 2d2a9f0..798f2d3 100644 (file)
@@ -13,5 +13,5 @@
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 870d951..549a199 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP MicroServices Bus Internal API Gateway
 name: msb-iag
-version: 4.0.0
+version: 5.0.0
index 2d2a9f0..798f2d3 100644 (file)
@@ -13,5 +13,5 @@
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 2d2a9f0..798f2d3 100644 (file)
@@ -13,5 +13,5 @@
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 9b90b2b..0c7b001 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP multicloud broker
 name: multicloud
-version: 4.0.0
+version: 5.0.0
index 825eaf6..b6221b3 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP multicloud Azure plugin
 name: multicloud-azure
-version: 4.0.0
+version: 5.0.0
index ac5e817..5ceb5b1 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP multicloud OpenStack fcaps Plugin
 name: multicloud-fcaps
-version: 4.0.0
+version: 5.0.0
index 5a73ee3..3c61d81 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Multicloud Kubernetes Plugin
 name: multicloud-k8s
-version: 4.0.0
+version: 5.0.0
index 7754685..fa1c397 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
     repository: '@local'
   - name: mongo
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: etcd
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 702bafe..fc682be 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP multicloud OpenStack Lenovo Plugin
 name: multicloud-lenovo
-version: 4.0.0
+version: 5.0.0
index ba8b70a..85be015 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP multicloud OpenStack Ocata Plugin
 name: multicloud-ocata
-version: 4.0.0
+version: 5.0.0
index 6c71dea..f936566 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP multicloud OpenStack Pike Plugin
 name: multicloud-pike
-version: 4.0.0
+version: 5.0.0
index 6e54b93..5eaffa7 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Multicloud Prometheus
 name: multicloud-prometheus
-version: 4.0.0
+version: 5.0.0
index ae7dba6..70250e9 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP multicloud VIO plugin
 name: multicloud-vio
-version: 4.0.0
+version: 5.0.0
index fa0ea64..46c5dfb 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP multicloud OpenStack WindRiver Plugin
 name: multicloud-windriver
-version: 4.0.0
+version: 5.0.0
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 76b668e..f82bf47 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Northbound Interface
 name: nbi
-version: 4.0.0
+version: 5.0.0
index 96b11ea..06ac100 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP NBI MariaDB Service
 name: mariadb
-version: 4.0.0
+version: 5.0.0
index ce3bc46..56097c0 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index d9dd0bc..b440b1e 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
     repository: '@local'
   - name: mongo
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
 
index 08ba011..aef2e59 100644 (file)
@@ -28,7 +28,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/externalapi/nbi:4.0.0
+image: onap/externalapi/nbi:5.0.0
 pullPolicy: Always
 sdc_authorization: Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=
 aai_authorization: Basic QUFJOkFBSQ==
index 82228a8..fa2ed65 100644 (file)
 
 apiVersion: v1
 name: onap
-version: 4.0.0
-appVersion: Dublin
+version: 5.0.0
+appVersion: El Alto 
 description: Open Network Automation Platform (ONAP)
 home: https://www.onap.org/
 sources:
 - https://gerrit.onap.org/r/#/admin/projects/
-icon: https://wiki.onap.org/download/thumbnails/1015829/onap_704x271%20copy.png?version=1&modificationDate=1488326334000&api=v2
\ No newline at end of file
+icon: https://wiki.onap.org/download/thumbnails/1015829/onap_704x271%20copy.png?version=1&modificationDate=1488326334000&api=v2
old mode 100644 (file)
new mode 100755 (executable)
index c267eaa..1d1dd8b
 # > helm repo add local http://127.0.0.1:8879
 dependencies:
   - name: aaf
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: aaf.enabled
   - name: aai
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: aai.enabled
   - name: appc
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: appc.enabled
   - name: cassandra
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: cassandra.enabled
   - name: clamp
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: clamp.enabled
   - name: cli
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: cli.enabled
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: consul
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: consul.enabled
   - name: contrib
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: contrib.enabled
   - name: dcaegen2
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: dcaegen2.enabled
   - name: dmaap
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: dmaap.enabled
   - name: esr
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: esr.enabled
   - name: log
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: log.enabled
   - name: sniro-emulator
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: sniro-emulator.enabled
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: mariadb-galera.enabled
   - name: msb
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: msb.enabled
   - name: multicloud
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: multicloud.enabled
   - name: nbi
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: nbi.enabled
   - name: nfs-provisioner
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: nfs-provisioner.enabled
   - name: pnda
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: pnda.enabled
   - name: policy
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: policy.enabled
   - name: pomba
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: pomba.enabled
   - name: portal
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: portal.enabled
   - name: oof
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: oof.enabled
   - name: robot
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: robot.enabled
   - name: sdc
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: sdc.enabled
   - name: sdnc
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: sdnc.enabled
   - name: so
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: so.enabled
   - name: uui
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: uui.enabled
   - name: vfc
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: vfc.enabled
   - name: vid
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: vid.enabled
   - name: vnfsdk
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: vnfsdk.enabled
   - name: modeling
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: modeling.enabled
diff --git a/kubernetes/onap/resources/overrides/environment.yaml b/kubernetes/onap/resources/overrides/environment.yaml
new file mode 100644 (file)
index 0000000..75ce8e5
--- /dev/null
@@ -0,0 +1,225 @@
+# Copyright © 2017,2019 Amdocs, AT&T , Bell Canada
+#
+# 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.
+
+#################################################################
+#
+# These overrides will affect all helm charts (ie. applications)
+# that are listed below and are 'enabled'.
+#
+#
+# This is specifically for the environments which take time to
+# deploy ONAP. This increase in timeouts prevents false restarting of
+# the pods during startup configuration.
+#
+# These timers have been tuned by the ONAP integration team. They
+# have been tested and validated in the ONAP integration lab (Intel/Windriver lab).
+# They are however indicative and may be adapted to your environment as they
+# depend on the performance of the infrastructure you are installing ONAP on.
+#
+# Please note that these timers must remain reasonable, in other words, if
+# your infrastructure is not performant enough, extending the timers to very
+# large value may not fix all installation issues on over subscribed hardware.
+#
+#################################################################
+aaf:
+  aaf-cs:
+    liveness:
+      initialDelaySeconds: 240
+    readiness:
+      initialDelaySeconds: 240
+  aaf-gui:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  aaf-oauth:
+    liveness:
+      initialDelaySeconds: 300
+    readiness:
+      initialDelaySeconds: 300
+  aaf-service:
+    liveness:
+      initialDelaySeconds: 300
+    readiness:
+      initialDelaySeconds: 300
+aai:
+  liveness:
+    initialDelaySeconds: 120
+  aai-champ:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  aai-data-router:
+    liveness:
+      initialDelaySeconds: 120
+  aai-sparky-be:
+    liveness:
+      initialDelaySeconds: 120
+  aai-spike:
+    liveness:
+      initialDelaySeconds: 120
+  aai-cassandra:
+    liveness:
+      periodSeconds: 120
+    readiness:
+      periodSeconds: 60
+appc:
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
+cassandra:
+  liveness:
+    initialDelaySeconds: 120
+    periodSeconds: 120
+  readiness:
+    initialDelaySeconds: 120
+    periodSeconds: 60
+clamp:
+  liveness:
+    initialDelaySeconds: 60
+  readiness:
+    initialDelaySeconds: 60
+dcaegen2:
+  dcae-cloudify-manager:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+dmaap:
+  dmaap-bus-controller:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  message-router:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  dmaap-dr-prov:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+    mariadb:
+      liveness:
+        initialDelaySeconds: 180
+        periodSeconds: 60
+  dmaap-dr-node:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+mariadb-galera:
+  liveness:
+    initialDelaySeconds: 180
+    periodSeconds: 60
+  mariadb-galera-server:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+modeling:
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
+oof:
+  oof-has:
+    music:
+      music-cassandra:
+        liveness:
+          periodSeconds: 120
+        readiness:
+          periodSeconds: 60
+portal:
+  portal-app:
+    liveness:
+      initialDelaySeconds: 60
+    readiness:
+      initialDelaySeconds: 60
+  portal-cassandra:
+    liveness:
+      periodSeconds: 120
+    readiness:
+      periodSeconds: 60
+sdc:
+  sdc-be:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  sdc-cs:
+    liveness:
+      initialDelaySeconds: 120
+      periodSeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+      periodSeconds: 60
+  sdc-es:
+    liveness:
+      initialDelaySeconds: 60
+    readiness:
+      initialDelaySeconds: 120
+  sdc-onboarding-be:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+sdnc:
+  liveness:
+    initialDelaySeconds: 60
+  readiness:
+    initialDelaySeconds: 60
+  dmaap-listener:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
+  sdnc-ansible-server:
+    readiness:
+      initialDelaySeconds: 120
+  sdnc-portal:
+    readiness:
+      initialDelaySeconds: 120
+  ueb-listener:
+    liveness:
+      initialDelaySeconds: 60
+    readiness:
+      initialDelaySeconds: 60
+so:
+  liveness:
+    initialDelaySeconds: 120
+  mariadb:
+    liveness:
+      initialDelaySeconds: 900
+    readiness:
+      initialDelaySeconds: 900
+uui:
+  uui-server:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+vfc:
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
diff --git a/kubernetes/onap/resources/overrides/onap-all-ingress-nginx.yaml b/kubernetes/onap/resources/overrides/onap-all-ingress-nginx.yaml
new file mode 100644 (file)
index 0000000..ee27269
--- /dev/null
@@ -0,0 +1,80 @@
+# Copyright © 2019 Amdocs, Bell Canada
+#
+# 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.
+
+###################################################################
+# This override file enables helm charts for all ONAP applications.
+###################################################################
+cassandra:
+  enabled: true
+mariadb-galera:
+  enabled: true
+
+aaf:
+  enabled: true
+aai:
+  enabled: true
+appc:
+  enabled: true
+clamp:
+  enabled: true
+cli:
+  enabled: true
+consul:
+  enabled: true
+contrib:
+  enabled: true
+dcaegen2:
+  enabled: true
+dmaap:
+  enabled: true
+esr:
+  enabled: true
+log:
+  enabled: true
+sniro-emulator:
+  enabled: true
+oof:
+  enabled: true
+msb:
+  enabled: true
+multicloud:
+  enabled: true
+nbi:
+  enabled: true
+policy:
+  enabled: true
+pomba:
+  enabled: true
+portal:
+  enabled: true
+robot:
+  enabled: true
+sdc:
+  enabled: true
+sdnc:
+  enabled: true
+so:
+  enabled: true
+uui:
+  enabled: true
+vfc:
+  enabled: true
+vid:
+  enabled: true
+  ingress:
+      enabled: true
+vnfsdk:
+  enabled: true
+nginx-ingress:
+    enabled: true
old mode 100644 (file)
new mode 100755 (executable)
index a623d59..09b363c 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Optimization Framework
 name: oof
-version: 4.0.0
+version: 5.0.0
index 253f350..65e225a 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Chart for Change Management Service Orchestrator (CMSO)
 name: oof-cmso
-version: 4.0.0
+version: 5.0.0
index 78fedfd..db69108 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Chart for Change Management Service Orchestrator (CMSO) Optimizer
 name: oof-cmso-optimizer
-version: 4.0.0
+version: 5.0.0
index 2cfc9e7..97cfe27 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Chart for Change Management Service Orchestrator (CMSO) Service
 name: oof-cmso-service
-version: 4.0.0
+version: 5.0.0
index e99b3be..7c726b9 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Chart for Change Management Service Orchestrator (CMSO) Ticket Management
 name: oof-cmso-ticketmgt
-version: 4.0.0
+version: 5.0.0
index 258d9ee..361c4cb 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: Chart for Change Management Service Orchestrator (CMSO) Service
 name: oof-cmso-topology
-version: 4.0.0
+version: 5.0.0
index a1b9f7a..16c438f 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
     repository: '@local'
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 4000b12..4b50543 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Homing and Allocation Service
 name: oof-has
-version: 4.0.0
+version: 5.0.0
index ad76980..666b750 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Homing and Allocation Servicei - API
 name: oof-has-api
-version: 4.0.0
+version: 5.0.0
index 64f13ed..9690161 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Homing and Allocation Sservice - Controller
 name: oof-has-controller
-version: 4.0.0
+version: 5.0.0
index 21e82c7..d47b40a 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Homing and Allocation Service - Data Component
 name: oof-has-data
-version: 4.0.0
+version: 5.0.0
index e6594a4..ee1b9cb 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Homing and Allocation Sevice - Reservation Component
 name: oof-has-reservation
-version: 4.0.0
+version: 5.0.0
index f4a594b..7afd9e8 100755 (executable)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Homing and Allocation Service - Solver Component
 name: oof-has-solver
-version: 4.0.0
+version: 5.0.0
index ca6d2b1..0acd1ef 100755 (executable)
@@ -15,8 +15,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: music
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index f8b0466..38538de 100755 (executable)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 5a66181..6f95f40 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP DCAE PNDA
 name: pnda
-version: 4.0.0
+version: 5.0.0
index 0286bd7..226b9e0 100644 (file)
@@ -17,4 +17,4 @@
 apiVersion: v1
 description: ONAP DCAE PNDA Bootstrap
 name: dcae-pnda-bootstrap
-version: 4.0.0
+version: 5.0.0
index d195f83..dc0355b 100644 (file)
@@ -16,5 +16,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 94754f7..15ac85d 100644 (file)
@@ -17,4 +17,4 @@
 apiVersion: v1
 description: ONAP DCAE PNDA Mirror
 name: dcae-pnda-mirror
-version: 4.0.0
+version: 5.0.0
index d195f83..dc0355b 100644 (file)
@@ -16,5 +16,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index d195f83..dc0355b 100644 (file)
@@ -16,5 +16,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index e56e4fa..9dc7c28 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Policy Administration Point
 name: policy
-version: 4.0.0
+version: 5.0.0
index 01bff49..2538be9 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Policy BRMS GW
 name: brmsgw
-version: 4.0.0
+version: 5.0.0
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 7f611a1..01c79be 100644 (file)
@@ -63,5 +63,5 @@ BRMS_UEB_API_KEY=
 BRMS_UEB_API_SECRET=
 
 #Dependency.json file version
-BRMS_DEPENDENCY_VERSION=1.4.0
-BRMS_MODELS_DEPENDENCY_VERSION=2.0.0
+BRMS_DEPENDENCY_VERSION=1.4.2
+BRMS_MODELS_DEPENDENCY_VERSION=2.0.2
index da3a39a..57ff2f4 100644 (file)
@@ -26,7 +26,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.4.1
+image: onap/policy-pe:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 31c8b6d..c6b11a4 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Drools Policy Engine 
 name: drools
-version: 4.0.0
+version: 5.0.0
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 62a17e5..5d85f6c 100644 (file)
@@ -29,7 +29,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: sonatype/nexus:2.14.8-01
+image: sonatype/nexus:2.14.13-01
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index d958201..21f9169 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pdpd-cl:1.4.2
+image: onap/policy-pdpd-cl:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index a6493b4..59bd592 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Policy MariaDB Service
 name: mariadb
-version: 4.0.0
+version: 5.0.0
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index fcd7093..15c75b7 100644 (file)
@@ -25,7 +25,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: mariadb:10.2.14
+image: mariadb:10.2.25
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 5c228c6..d17329a 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Policy PDP
 name: pdp
-version: 4.0.0
+version: 5.0.0
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index b57a67e..07f1794 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.4.1
+image: onap/policy-pe:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 592180f..34bd140 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP Policy APEX PDP
 name: policy-apex-pdp
-version: 4.0.0
+version: 5.0.0
index e4bbf69..138addd 100644 (file)
@@ -18,5 +18,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 9de4a8b..f26f35a 100644 (file)
         "pdpType":"apex",
         "description":"Pdp Heartbeat",
         "supportedPolicyTypes":[{"name":"onap.policies.controlloop.operational.Apex","version":"1.0.0"}]
+    },
+    "topicParameterGroup": {
+        "topicSources" : [{
+            "topic" : "POLICY-PDP-PAP",
+            "servers" : [ "message-router" ],
+            "topicCommInfrastructure" : "dmaap"
+        }],
+        "topicSinks" : [{
+            "topic" : "POLICY-PDP-PAP",
+            "servers" : [ "message-router" ],
+            "topicCommInfrastructure" : "dmaap"
+        }]
     }
 }
diff --git a/kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties b/kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties
deleted file mode 100644 (file)
index b61626b..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# 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.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-dmaap.source.topics=POLICY-PDP-PAP
-dmaap.sink.topics=POLICY-PDP-PAP
-
-dmaap.source.topics.POLICY-PDP-PAP.servers= message-router
-dmaap.sink.topics.POLICY-PDP-PAP.servers= message-router
\ No newline at end of file
index f1c024b..9ab1e05 100644 (file)
@@ -45,8 +45,6 @@ spec:
           - /opt/app/policy/apex-pdp/bin/apexOnapPf.sh
           - -c
           - /home/apexuser/config/OnapPfConfig.json
-          - -p
-          - /home/apexuser/config/topic.properties
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           ports:
           - containerPort: {{ .Values.service.externalPort }}
index f9e0c8d..381c825 100644 (file)
@@ -29,7 +29,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-apex-pdp:2.1.0
+image: onap/policy-apex-pdp:2.2.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index a50c8d9..ad74784 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP Policy Design API
 name: policy-api
-version: 4.0.0
+version: 5.0.0
index 768bdb3..316e7e3 100644 (file)
@@ -18,5 +18,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index b34e9be..bace88f 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-api:2.0.1
+image: onap/policy-api:2.1.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 8c5553d..028a5b5 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Policy Common
 name: policy-common
-version: 4.0.0
+version: 5.0.0
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 40abc91..e6c8910 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP Policy Distribution
 name: policy-distribution
-version: 4.0.0
+version: 5.0.0
index e4bbf69..138addd 100644 (file)
@@ -18,5 +18,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 935e7e6..2cc0d44 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-distribution:2.1.0
+image: onap/policy-distribution:2.2.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index dccf45d..85e44e7 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP Policy Administration (PAP)
 name: policy-pap
-version: 4.0.0
+version: 5.0.0
index 849db83..f035fb9 100644 (file)
@@ -18,5 +18,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index fa80bf2..3f33ed9 100644 (file)
@@ -26,6 +26,7 @@
         "aaf": false
     },
     "pdpParameters": {
+        "heartBeatMs": 120000,
         "updateParameters": {
             "maxRetryCount": 1,
             "maxWaitMs": 30000
         "databaseUser": "policy_user",
         "databasePassword": "cG9saWN5X3VzZXI=",
         "persistenceUnit": "PolicyMariaDb"
+    },
+    "topicParameterGroup": {
+        "topicSources" : [{
+            "topic" : "POLICY-PDP-PAP",
+            "servers" : [ "message-router" ],
+            "topicCommInfrastructure" : "dmaap"
+        }],
+        "topicSinks" : [{
+            "topic" : "POLICY-PDP-PAP",
+            "servers" : [ "message-router" ],
+            "topicCommInfrastructure" : "dmaap"
+        }]
     }
 }
diff --git a/kubernetes/policy/charts/policy-pap/resources/config/topic.properties b/kubernetes/policy/charts/policy-pap/resources/config/topic.properties
deleted file mode 100644 (file)
index c1124a1..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# ============LICENSE_START=======================================================
-# ONAP PAP
-# ================================================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-
-dmaap.sink.topics=POLICY-PDP-PAP
-dmaap.sink.topics.POLICY-PDP-PAP.servers=message-router
-dmaap.source.topics=POLICY-PDP-PAP
-dmaap.source.topics.POLICY-PDP-PAP.servers=message-router
index 4945f76..3332f60 100644 (file)
@@ -36,7 +36,7 @@ spec:
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           command: ["/opt/app/policy/pap/bin/policy-pap.sh"]
-          args: ["/opt/app/policy/pap/etc/mounted/config.json", "/opt/app/policy/pap/etc/mounted/topic.properties"]
+          args: ["/opt/app/policy/pap/etc/mounted/config.json"]
           ports:
           - containerPort: {{ .Values.service.internalPort }}
           # disable liveness probe when breakpoints set in debugger
index bccdee5..e3cb999 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pap:2.0.1
+image: onap/policy-pap:2.1.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index be4325e..d9f6056 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: ONAP Policy XACML PDP
 name: policy-xacml-pdp
-version: 4.0.0
+version: 5.0.0
index 768bdb3..316e7e3 100644 (file)
@@ -18,5 +18,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 789dde4..5635c05 100644 (file)
         "https": true,
         "aaf": false
     },
-    "applicationPath": "/opt/app/policy/pdpx/apps"
-}
\ No newline at end of file
+    "applicationPath": "/opt/app/policy/pdpx/apps",
+    "topicParameterGroup": {
+        "topicSources" : [{
+            "topic" : "POLICY-PDP-PAP",
+            "servers" : [ "message-router" ],
+            "topicCommInfrastructure" : "dmaap"
+        }],
+        "topicSinks" : [{
+            "topic" : "POLICY-PDP-PAP",
+            "servers" : [ "message-router" ],
+            "topicCommInfrastructure" : "dmaap"
+        }]
+    }
+}
diff --git a/kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties b/kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties
deleted file mode 100644 (file)
index a56de8b..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# ============LICENSE_START=======================================================
-# ONAP PAP
-# ================================================================================
-# Copyright (C) 2019 AT&T 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.
-# ============LICENSE_END=========================================================
-
-dmaap.sink.topics=POLICY-PDP-PAP
-dmaap.sink.topics.POLICY-PDP-PAP.servers=message-router
-dmaap.source.topics=POLICY-PDP-PAP
-dmaap.source.topics.POLICY-PDP-PAP.servers=message-router
\ No newline at end of file
index e5e94cc..da9b019 100644 (file)
@@ -36,7 +36,7 @@ spec:
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           command: ["/opt/app/policy/pdpx/bin/policy-pdpx.sh"]
-          args: ["/opt/app/policy/pdpx/etc/mounted/config.json","/opt/app/policy/pdpx/etc/mounted/topic.properties"]
+          args: ["/opt/app/policy/pdpx/etc/mounted/config.json"]
           ports:
           - containerPort: {{ .Values.service.internalPort }}
           # disable liveness probe when breakpoints set in debugger
index 7e81ba8..0f61c03 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-xacml-pdp:2.0.1
+image: onap/policy-xacml-pdp:2.1.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 68a7d9e..05d49a8 100644 (file)
@@ -15,7 +15,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index d1527ab..f43d50d 100644 (file)
@@ -41,7 +41,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.4.1
+image: onap/policy-pe:1.5.1
 pullPolicy: Always
 
 subChartsOnly:
index b1899fd..fca1743 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Post Orchestration Model Based Audit
 name: pomba
-version: 4.0.0
+version: 5.0.0
index 7ec60c5..d5ea123 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA AAI Context Builder
 name: pomba-aaictxbuilder
-version: 4.0.0
+version: 5.0.0
index 509eadd..a12911b 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 77182fb..05ed295 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA Context Aggregator
 name: pomba-contextaggregator
-version: 4.0.0
+version: 5.0.0
index 1d30dfd..1063d17 100755 (executable)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 5d91c65..9504790 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP POMBA Data-Router
 name: pomba-data-router
-version: 4.0.0
+version: 5.0.0
index e62e7fd..cf1fd2d 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA Elasticsearch
 name: pomba-elasticsearch
-version: 4.0.0
+version: 5.0.0
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index d732104..c53fe6d 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA Kibana
 name: pomba-kibana
-version: 4.0.0
+version: 5.0.0
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index eb27414..0565c3e 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1\r
 description: ONAP POMBA Network Discovery\r
 name: pomba-networkdiscovery\r
-version: 4.0.0\r
+version: 5.0.0\r
index 1e8f79b..4b6860c 100644 (file)
@@ -14,5 +14,5 @@
 \r
 dependencies:\r
   - name: common\r
-    version: ~4.x-0\r
+    version: ~5.x-0\r
     repository: '@local'\r
index 4479e09..f3b18a5 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA Network Discovery Context Builder
 name: pomba-networkdiscoveryctxbuilder
-version: 4.0.0
+version: 5.0.0
index c77e28d..4b1fa9c 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA SDC Context Builder
 name: pomba-sdcctxbuilder
-version: 4.0.0
+version: 5.0.0
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index 2acbe53..dcaeddb 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA SDNC Context Builder
 name: pomba-sdncctxbuilder
-version: 4.0.0
+version: 5.0.0
index 509eadd..a12911b 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index bd5bdb6..633a062 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP POMBA search-data
 name: pomba-search-data
-version: 4.0.0
+version: 5.0.0
index 153e98d..3d2efd5 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1\r
 description: ONAP POMBA Network Discovery Service Decomposition\r
 name: pomba-servicedecomposition\r
-version: 4.0.0\r
+version: 5.0.0\r
index 020409d..4dd05d2 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: POMBA Validaton-Service
 name: pomba-validation-service
-version: 4.0.0
+version: 5.0.0
index 845a5fe..5406430 100644 (file)
@@ -14,7 +14,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 8ab304f..08ed655 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Web Portal
 name: portal
-version: 4.0.0
+version: 5.0.0
index 0df66c8..e7ee96c 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Portal application
 name: portal-app
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1f0252b..5511e34 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: Portal cassandra
 name: portal-cassandra
-version: 4.0.0
+version: 5.0.0
index f6cf25d..7b2ea08 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: MariaDB Service
 name: portal-mariadb
-version: 4.0.0
+version: 5.0.0
index 4580e56..5ef05c9 100644 (file)
@@ -28,7 +28,7 @@ spec:
   ports:
     {{if eq .Values.service.type "NodePort" -}}
     - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
index bb85ea6..6d13062 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: Portal software development kit
 name: portal-sdk
-version: 4.0.0
+version: 5.0.0
index b7617c9..1f3a807 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: Portal widgets micro service application
 name: portal-widget
-version: 4.0.0
+version: 5.0.0
index b6bacff..021f359 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: Zookeeper for ONAP Portal
 name: portal-zookeeper
-version: 4.0.0
+version: 5.0.0
index 4580e56..5ef05c9 100644 (file)
@@ -28,7 +28,7 @@ spec:
   ports:
     {{if eq .Values.service.type "NodePort" -}}
     - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
index 0ba9e47..57ee781 100644 (file)
@@ -15,5 +15,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index b20cb5a..a9570c5 100644 (file)
@@ -20,7 +20,8 @@ with open(token_path, 'r') as token_file:
 # setup logging
 log = logging.getLogger(__name__)
 handler = logging.StreamHandler(sys.stdout)
-handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
+formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+handler.setFormatter(formatter)
 handler.setLevel(logging.INFO)
 log.addHandler(handler)
 log.setLevel(logging.INFO)
@@ -54,17 +55,22 @@ def is_job_complete(job_name):
 
 DEF_TIMEOUT = 10
 DESCRIPTION = "Kubernetes container job complete check utility"
-USAGE = "Usage: job_complete.py [-t <timeout>] -j <job_name> [-j <job_name> ...]\n" \
+USAGE = "Usage: job_complete.py [-t <timeout>] -j <job_name> " \
+        "[-j <job_name> ...]\n" \
         "where\n" \
-        "<timeout> - wait for container job complete timeout in min, default is " + str(DEF_TIMEOUT) + "\n" \
+        "<timeout> - wait for container job complete timeout in min, " \
+        "default is " + str(DEF_TIMEOUT) + "\n" \
         "<job_name> - name of the job to wait for\n"
 
+
 def main(argv):
     # args are a list of job names
     job_names = []
     timeout = DEF_TIMEOUT
     try:
-        opts, args = getopt.getopt(argv, "hj:t:", ["job-name=", "timeout=", "help"])
+        opts, args = getopt.getopt(argv, "hj:t:", ["job-name=",
+                                                   "timeout=",
+                                                   "help"])
         for opt, arg in opts:
             if opt in ("-h", "--help"):
                 print("%s\n\n%s" % (DESCRIPTION, USAGE))
@@ -89,11 +95,14 @@ def main(argv):
             if complete is True:
                 break
             elif time.time() > timeout:
-                log.warning("timed out waiting for '" + job_name + "' to be completed")
+                log.warning("timed out waiting for '" + job_name +
+                            "' to be completed")
                 exit(1)
             else:
-                # spread in time potentially parallel execution in multiple containers
+                # spread in time potentially parallel execution in multiple
+                # containers
                 time.sleep(random.randint(5, 11))
 
+
 if __name__ == "__main__":
-    main(sys.argv[1:])
\ No newline at end of file
+    main(sys.argv[1:])
index 0e133ea..db7105a 100644 (file)
@@ -20,7 +20,8 @@ with open(token_path, 'r') as token_file:
 # setup logging
 log = logging.getLogger(__name__)
 handler = logging.StreamHandler(sys.stdout)
-handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
+formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+handler.setFormatter(formatter)
 handler.setLevel(logging.INFO)
 log.addHandler(handler)
 log.setLevel(logging.INFO)
@@ -31,14 +32,14 @@ configuration.ssl_ca_cert = cert
 configuration.api_key['authorization'] = token
 configuration.api_key_prefix['authorization'] = 'Bearer'
 coreV1Api = client.CoreV1Api(client.ApiClient(configuration))
-api_instance=client.ExtensionsV1beta1Api(client.ApiClient(configuration))
+api_instance = client.ExtensionsV1beta1Api(client.ApiClient(configuration))
 api = client.AppsV1beta1Api(client.ApiClient(configuration))
 batchV1Api = client.BatchV1Api(client.ApiClient(configuration))
 
+
 def is_job_complete(job_name):
     complete = False
     log.info("Checking if " + job_name + "  is complete")
-    response = ""
     try:
         response = batchV1Api.read_namespaced_job_status(job_name, namespace)
         if response.status.succeeded == 1:
@@ -54,11 +55,12 @@ def is_job_complete(job_name):
     except Exception as e:
         log.error("Exception when calling read_namespaced_job_status: %s\n" % e)
 
+
 def wait_for_statefulset_complete(statefulset_name):
     try:
         response = api.read_namespaced_stateful_set(statefulset_name, namespace)
         s = response.status
-        if ( s.updated_replicas == response.spec.replicas and
+        if (s.updated_replicas == response.spec.replicas and
                 s.replicas == response.spec.replicas and
                 s.ready_replicas == response.spec.replicas and
                 s.current_replicas == response.spec.replicas and
@@ -71,11 +73,12 @@ def wait_for_statefulset_complete(statefulset_name):
     except Exception as e:
         log.error("Exception when waiting for Statefulset status: %s\n" % e)
 
+
 def wait_for_deployment_complete(deployment_name):
     try:
         response = api.read_namespaced_deployment(deployment_name, namespace)
         s = response.status
-        if ( s.unavailable_replicas == None and
+        if (s.unavailable_replicas is None and
                 s.updated_replicas == response.spec.replicas and
                 s.replicas == response.spec.replicas and
                 s.ready_replicas == response.spec.replicas and
@@ -88,24 +91,27 @@ def wait_for_deployment_complete(deployment_name):
     except Exception as e:
         log.error("Exception when waiting for deployment status: %s\n" % e)
 
+
 def is_ready(container_name):
     ready = False
     log.info("Checking if " + container_name + "  is ready")
     try:
-        response = coreV1Api.list_namespaced_pod(namespace=namespace, watch=False)
+        response = coreV1Api.list_namespaced_pod(namespace=namespace,
+                                                 watch=False)
         for i in response.items:
             # container_statuses can be None, which is non-iterable.
             if i.status.container_statuses is None:
                 continue
             for s in i.status.container_statuses:
                 if s.name == container_name:
-                    if i.metadata.owner_references[0].kind  == "StatefulSet":
-                        ready = wait_for_statefulset_complete(i.metadata.owner_references[0].name)
+                    name = read_name(i)
+                    if i.metadata.owner_references[0].kind == "StatefulSet":
+                        ready = wait_for_statefulset_complete(name)
                     elif i.metadata.owner_references[0].kind == "ReplicaSet":
-                        api_response = api_instance.read_namespaced_replica_set_status(i.metadata.owner_references[0].name, namespace)
-                        ready = wait_for_deployment_complete(api_response.metadata.owner_references[0].name)
+                        deployment_name = get_deployment_name(name)
+                        ready = wait_for_deployment_complete(deployment_name)
                     elif i.metadata.owner_references[0].kind == "Job":
-                        ready = is_job_complete(i.metadata.owner_references[0].name)
+                        ready = is_job_complete(name)
 
                     return ready
 
@@ -115,19 +121,36 @@ def is_ready(container_name):
     except Exception as e:
         log.error("Exception when calling list_namespaced_pod: %s\n" % e)
 
+
+def read_name(item):
+    return item.metadata.owner_reference[0].name
+
+
+def get_deployment_name(replicaset):
+    api_response = api_instance.read_namespaced_replica_set_status(replicaset,
+                                                                   namespace)
+    deployment_name = read_name(api_response)
+    return deployment_name
+
+
 DEF_TIMEOUT = 10
 DESCRIPTION = "Kubernetes container readiness check utility"
-USAGE = "Usage: ready.py [-t <timeout>] -c <container_name> [-c <container_name> ...]\n" \
+USAGE = "Usage: ready.py [-t <timeout>] -c <container_name> " \
+        "[-c <container_name> ...]\n" \
         "where\n" \
-        "<timeout> - wait for container readiness timeout in min, default is " + str(DEF_TIMEOUT) + "\n" \
+        "<timeout> - wait for container readiness timeout in min, " \
+        "default is " + str(DEF_TIMEOUT) + "\n" \
         "<container_name> - name of the container to wait for\n"
 
+
 def main(argv):
     # args are a list of container names
     container_names = []
     timeout = DEF_TIMEOUT
     try:
-        opts, args = getopt.getopt(argv, "hc:t:", ["container-name=", "timeout=", "help"])
+        opts, args = getopt.getopt(argv, "hc:t:", ["container-name=",
+                                                   "timeout=",
+                                                   "help"])
         for opt, arg in opts:
             if opt in ("-h", "--help"):
                 print("%s\n\n%s" % (DESCRIPTION, USAGE))
@@ -152,12 +175,15 @@ def main(argv):
             if ready is True:
                 break
             elif time.time() > timeout:
-                log.warning("timed out waiting for '" + container_name + "' to be ready")
+                log.warning("timed out waiting for '" + container_name +
+                            "' to be ready")
                 exit(1)
             else:
-                # spread in time potentially parallel execution in multiple containers
+                # spread in time potentially parallel execution in multiple
+                # containers
                 time.sleep(random.randint(5, 11))
 
+
 if __name__ == "__main__":
     main(sys.argv[1:])
 
diff --git a/kubernetes/robot b/kubernetes/robot
new file mode 160000 (submodule)
index 0000000..b6b5b0e
--- /dev/null
@@ -0,0 +1 @@
+Subproject commit b6b5b0e6f8880e3a922a2fef97e95e5013475228
diff --git a/kubernetes/robot/demo-k8s.sh b/kubernetes/robot/demo-k8s.sh
deleted file mode 100755 (executable)
index eb6744b..0000000
+++ /dev/null
@@ -1,223 +0,0 @@
-#!/bin/bash
-# Copyright (C) 2018 Amdocs, Bell Canada
-# Modifications Copyright (C) 2019 Samsung
-#
-# 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.
-#
-# Execute tags built to support the hands-on demo
-#
-function usage
-{
-       echo "Usage: demo-k8s.sh <namespace> <command> [<parameters>]"
-       echo " "
-       echo "       demo-k8s.sh <namespace> init"
-       echo "               - Execute both init_customer + distribute"
-       echo " "
-       echo "       demo-k8s.sh <namespace> init_customer"
-       echo "               - Create demo customer (Demonstration) and services, etc."
-       echo " "
-       echo "       demo-k8s.sh <namespace> distribute  [<prefix>]"
-       echo "               - Distribute demo models (demoVFW and demoVLB)"
-       echo " "
-       echo "       demo-k8s.sh <namespace> preload <vnf_name> <module_name>"
-       echo "               - Preload data for VNF for the <module_name>"
-       echo " "
-       echo "       demo-k8s.sh <namespace> appc <module_name>"
-       echo "               - provide APPC with vFW module mount point for closed loop"
-       echo " "
-       echo "       demo-k8s.sh <namespace> init_robot [ <etc_hosts_prefix> ]"
-       echo "               - Initialize robot after all ONAP VMs have started"
-       echo " "
-       echo "       demo-k8s.sh <namespace> instantiateVFW"
-       echo "               - Instantiate vFW module for the demo customer (DemoCust<uuid>)"
-       echo " "
-       echo "       demo-k8s.sh <namespace> instantiateVFWdirectso  csar_filename"
-       echo "               - Instantiate vFW module using direct SO interface using previously distributed model "
-        echo "                 that is in /tmp/csar in robot container"
-       echo " "
-       echo "       demo-k8s.sh <namespace> deleteVNF <module_name from instantiateVFW>"
-       echo "               - Delete the module created by instantiateVFW"
-       echo " "
-       echo "       demo-k8s.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"
-       echo " "
-       echo "       demo-k8s.sh <namespace> vfwclosedloop <pgn-ip-address>"
-        echo "           - vFWCL: Sets the packet generator to high and low rates, and checks whether the policy "
-        echo "             kicks in to modulate the rates back to medium"
-       echo " "
-}
-
-# Set the defaults
-
-echo "Number of parameters:"
-echo $#
-
-if [ $# -lt 2 ];then
-       usage
-       exit
-fi
-
-NAMESPACE=$1
-shift
-
-##
-## if more than 1 tag is supplied, the must be provided with -i or -e
-##
-while [ $# -gt 0 ]
-do
-       key="$1"
-        echo "KEY:"
-        echo $key
-
-       case $key in
-       init_robot)
-                       TAG="UpdateWebPage"
-                       read -s -p "WEB Site Password for user 'test': " WEB_PASSWORD
-                       if [ "$WEB_PASSWORD" = "" ]; then
-                               echo ""
-                               echo "WEB Password is required for user 'test'"
-                               exit
-                       fi
-                       VARIABLES="$VARIABLES -v WEB_PASSWORD:$WEB_PASSWORD"
-                       shift
-                       if [ $# -eq 2 ];then
-                               VARIABLES="$VARIABLES -v HOSTS_PREFIX:$1"
-                       fi
-                       shift
-                       ;;
-       init)
-                       TAG="InitDemo"
-                       shift
-                       ;;
-       init_customer)
-                       TAG="InitCustomer"
-                       shift
-                       ;;
-       distribute)
-                       TAG="InitDistribution"
-                       shift
-                       if [ $# -eq 1 ];then
-                               VARIABLES="$VARIABLES -v DEMO_PREFIX:$1"
-                       fi
-                       shift
-                       ;;
-       preload)
-                       TAG="PreloadDemo"
-                       shift
-                       if [ $# -ne 2 ];then
-                               echo "Usage: demo-k8s.sh <namespace> preload <vnf_name> <module_name>"
-                               exit
-                       fi
-                       VARIABLES="$VARIABLES -v VNF_NAME:$1"
-                       shift
-                       VARIABLES="$VARIABLES -v MODULE_NAME:$1"
-                       shift
-                       ;;
-       appc)
-                       TAG="APPCMountPointDemo"
-                       shift
-                       if [ $# -ne 1 ];then
-                                       echo "Usage: demo-k8s.sh <namespace> appc <module_name>"
-                                       exit
-                               fi
-                       VARIABLES="$VARIABLES -v MODULE_NAME:$1"
-                       shift
-                       ;;
-       instantiateVFW)
-                       TAG="instantiateVFW"
-                       VARIABLES="$VARIABLES -v GLOBAL_BUILD_NUMBER:$$"
-                       shift
-                       ;;
-        instantiateVFWdirectso)
-                        TAG="instantiateVFWdirectso"
-                        shift
-                        if [ $# -ne 1 ];then
-                                        echo "Usage: demo-k8s.sh <namespace> instantiateVFWdirectso <csar_filename>"
-                                        exit
-                                fi
-                        VARIABLES="$VARIABLES -v CSAR_FILE:$1 -v GLOBAL_BUILD_NUMBER:$$"
-                        shift
-                        ;;
-       deleteVNF)
-                       TAG="deleteVNF"
-                       shift
-                       if [ $# -ne 1 ];then
-                               echo "Usage: demo-k8s.sh <namespace> deleteVNF <module_name from instantiateVFW>"
-                               exit
-                       fi
-                       VARFILE=$1.py
-                       if [ -e /opt/eteshare/${VARFILE} ]; then
-                               VARIABLES="$VARIABLES -V /share/${VARFILE}"
-                       else
-                               echo "Cache file ${VARFILE} is not found"
-                               exit
-                       fi
-                       shift
-                       ;;
-       heatbridge)
-                       TAG="heatbridge"
-                       shift
-                       if [ $# -ne 4 ];then
-                               echo "Usage: demo-k8s.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
-                               exit
-                       fi
-                       VARIABLES="$VARIABLES -v HB_STACK:$1"
-                       shift
-                       VARIABLES="$VARIABLES -v HB_SERVICE_INSTANCE_ID:$1"
-                       shift
-                       VARIABLES="$VARIABLES -v HB_SERVICE:$1"
-                       shift
-                       VARIABLES="$VARIABLES -v HB_IPV4_OAM_ADDRESS:$1"
-                       shift
-                       ;;
-       cds)
-                       TAG="cds"
-                       shift
-                       ;;
-        distributeVFWNG)
-                        TAG="distributeVFWNG"
-                        shift
-                        ;;
-        distributeDemoVFWDT)
-                        TAG="DistributeDemoVFWDT"
-                        shift
-                        ;;
-        instantiateDemoVFWDT)
-                        TAG="instantiateVFWDT"
-                        shift
-                        ;;
-        vfwclosedloop)
-                        TAG="vfwclosedloop"
-                        shift
-                        VARIABLES="$VARIABLES -v PACKET_GENERATOR_HOST:$1 -v pkg_host:$1"
-                        shift
-                        ;;
-       *)
-                       usage
-                       exit
-       esac
-done
-
-set -x
-
-POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
-
-ETEHOME=/var/opt/ONAP
-
-export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec  ${POD}  -- bash -c "ls -1q /share/logs/ | wc -l")
-OUTPUT_FOLDER=$(printf %04d $GLOBAL_BUILD_NUMBER)_demo_$key
-DISPLAY_NUM=$(($GLOBAL_BUILD_NUMBER + 90))
-
-VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
-
-kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} -i ${TAG} --display $DISPLAY_NUM 2> ${TAG}.out
diff --git a/kubernetes/robot/ete-k8s.sh b/kubernetes/robot/ete-k8s.sh
deleted file mode 100755 (executable)
index 5d42f04..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright © 2018 Amdocs, Bell Canada
-#
-# 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.
-
-#!/bin/bash
-
-#
-# Run the testsuite for the passed tag. Valid tags are listed in usage help
-# Please clean up logs when you are done...
-#
-if [ "$1" == "" ] || [ "$2" == "" ]; then
-   echo "Usage: ete-k8s.sh [namespace] [tag]"
-   echo ""
-   echo "  List of test case tags (filename for intent: tag)"
-   echo ""
-   echo "  cds.robot: cds"
-   echo ""
-   echo "  clamp.robot: clamp"
-   echo ""
-   echo "  demo.robot: InitDemo, InitCustomer, APPCCDTPreloadDemo, APPCMountPointDemo, DistributeDemoVFWDT, DistributeVFWNG,"
-   echo "              InitDistribution, PreloadDemo, deleteVNF, heatbridge, instantiateDemoVFWCL, instantiateVFW, instantiateVFWCL, instantiateVFWDT"
-   echo ""
-   echo "  health-check.robot: health, core, small, medium, 3rdparty, api, datarouter, externalapi, health-aaf, health-aai, health-appc,"
-   echo "                      health-clamp, health-cli, health-dcae, health-dmaap, health-log, health-modeling, health-msb,"
-   echo "                      health-multicloud, health-oof, health-policy, health-pomba, health-portal, health-sdc, health-sdnc,"
-   echo "                      health-so, health-uui, health-vfc, health-vid, health-vnfsdk, healthdist, healthlogin, healthmr,"
-   echo "                      healthportalapp, multicloud, oom"
-   echo ""
-   echo " hvves.robot: HVVES, ete"
-   echo ""
-   echo " model-distribution-vcpe.robot: distributevCPEResCust"
-   echo ""
-   echo " model-distribution.robot: distribute, distributeVFWDT, distributeVLB"
-   echo ""
-   echo " oof-*.robot: cmso, has, homing"
-   echo ""
-   echo " pnf-registration.robot: ete, pnf_registrate"
-   echo ""
-   echo " post-install-tests.robot dmaapacl, postinstall"
-   echo ""
-   echo " update_onap_page.robot: UpdateWebPage"
-   echo ""
-   echo " vnf-orchestration-direct-so.robot: instantiateVFWdirectso"
-   echo ""
-   echo " vnf-orchestration.robot: instantiate, instantiateNoDelete, stability72hr"
-   exit
-fi
-
-set -x
-
-export NAMESPACE="$1"
-
-POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
-
-TAGS="-i $2"
-
-ETEHOME=/var/opt/ONAP
-export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec  ${POD}  -- bash -c "ls -1q /share/logs/ | wc -l")
-OUTPUT_FOLDER=$(printf %04d $GLOBAL_BUILD_NUMBER)_ete_$2
-DISPLAY_NUM=$(($GLOBAL_BUILD_NUMBER + 90))
-
-VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
-VARIABLES="-v GLOBAL_BUILD_NUMBER:$$"
-
-kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} ${TAGS} --display $DISPLAY_NUM
diff --git a/kubernetes/robot/eteHelm-k8s.sh b/kubernetes/robot/eteHelm-k8s.sh
deleted file mode 100755 (executable)
index c58d8a8..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright (c) 2017 AT&T 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.
-
-#!/bin/bash
-
-#
-# Run the health-check testsuites for the tags discovered by helm list
-# Please clean up logs when you are done...
-#
-if [ "$1" == "" ] ;  then
-   echo "Usage: eteHelm-k8s.sh [namespace]"
-   echo " list projects via helm list and runs health-check with those tags except dev and dev-consul"
-   exit
-fi
-
-set -x
-
-export NAMESPACE="$1"
-
-POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
-
-PROJECTS=$(helm list | tail +3 | grep '-' | cut -d' ' -f1 | sed -E 's/\w+-(\w+)/health-\1/g' | grep -v consul | grep -v nfs-provision)
-
-TAGS=""
-for project in $PROJECTS ;
-do
-TAGS="$TAGS -i $project"
-done
-
-
-ETEHOME=/var/opt/ONAP
-export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec  ${POD}  -- bash -c "ls -1q /share/logs/ | wc -l")
-OUTPUT_FOLDER=$(printf %04d $GLOBAL_BUILD_NUMBER)_ete_helmlist
-DISPLAY_NUM=$(($GLOBAL_BUILD_NUMBER + 90))
-
-VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
-VARIABLES="-v GLOBAL_BUILD_NUMBER:$$"
-
-kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} ${TAGS} --display $DISPLAY_NUM
diff --git a/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py b/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py
deleted file mode 100644 (file)
index d58e138..0000000
+++ /dev/null
@@ -1,542 +0,0 @@
-# Copyright (c) 2018 Amdocs, Bell Canada
-#
-# 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.
-
-import json
-import os.path
-from itertools import chain
-from collections import defaultdict
-
-
-GLOBAL_PRELOAD_PARAMETERS = {
-    # heat template parameter values common to all heat template continaing these parameters
-     "defaults" : {
-         'key_name' : 'vfw_key${uuid}',
-         "pub_key" : "{{ .Values.vnfPubKey }}",
-         "repo_url_blob" : "https://nexus.onap.org/content/repositories/raw",
-         "repo_url_artifacts" : "{{ .Values.demoArtifactsRepoUrl }}",
-         "demo_artifacts_version" : "${GLOBAL_INJECTED_ARTIFACTS_VERSION}",
-         "onap_private_net_id" : "${GLOBAL_INJECTED_NETWORK}",
-         "onap_private_subnet_id" : "{{ .Values.openStackPrivateSubnetId }}",
-         "onap_private_net_cidr" : "{{ .Values.openStackPrivateNetCidr }}",
-         "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-         "dcae_collector_ip" : "{{ .Values.dcaeCollectorIp }}",
-         "dcae_collector_port" : "30235",
-         "public_net_id" : "${GLOBAL_INJECTED_PUBLIC_NET_ID}",
-         "cloud_env" : "${GLOBAL_INJECTED_CLOUD_ENV}",
-         "install_script_version" : "${GLOBAL_INJECTED_SCRIPT_VERSION}",
-     },
-    # ##
-    # heat template parameter values for heat template instances created during Vnf-Orchestration test cases
-    # ##
-    "Vnf-Orchestration" : {
-        "vfw_preload.template": {
-            "unprotected_private_net_id" : "vofwl01_unprotected${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_id" : "vofwl01_protected${hostid}",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_int_unprotected_private_ip_0" : "192.168.10.100",
-            "vfw_int_protected_private_ip_0" : "192.168.20.100",
-            "vfw_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.1",
-            "vfw_int_protected_private_floating_ip" : "192.168.10.200",
-            "vpg_int_unprotected_private_ip_0" : "192.168.10.200",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.2",
-            "vsn_int_protected_private_ip_0" : "192.168.20.250",
-            "vsn_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.3",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vfw_name_0':'vofwl01fwl${hostid}',
-            'vpg_name_0':'vofwl01pgn${hostid}',
-            "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vsn_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vsn_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            'vsn_name_0':'vofwl01snk${hostid}'
-        },
-        "vfwsnk_preload.template": {
-            "int_unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
-            "int_unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "int_protected_private_net_id" : "vofwlsnk_protected${hostid}",
-            "int_protected_private_subnet_id" : "vofwlsnk_protected_sub${hostid}",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_int_unprotected_private_ip_0" : "192.168.10.100",
-            # this should be the same value as vpg_private_ip_0
-            "vfw_int_protected_private_floating_ip" : "192.168.10.200",
-            "vfw_int_protected_private_ip_0" : "192.168.20.100",
-            "vfw_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.101",
-            "vsn_int_protected_private_ip_0" : "192.168.20.250",
-            "vsn_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.102",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vfw_name_0':'vofwl01fwl${hostid}',
-            'vsn_name_0':'vofwl01snk${hostid}',
-            "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vsn_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vsn_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-        },
-        "vpkg_preload.template": {
-            # vFWSNK_ prepended to vpkg since the default behoir for vFWSNK tempalte is to concatenate vnf_name and network_name
-            "unprotected_private_net_id" : "vFWSNK_vofwlsnk_unprotected${hostid}",
-            "unprotected_private_subnet_id" : "vFWSNK_vofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_private_ip_0" : "192.168.10.100",
-            "vpg_unprotected_private_ip_0" : "192.168.10.200",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103",
-            "vsn_private_ip_0" : "192.168.20.250",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vpg_name_0':'vofwl01pgn${hostid}',
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-        },
-        #  vFWDT preload data
-        "vfwdt_vpkg_preload.template": {
-            "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
-            "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_private_ip_0" : "192.168.10.100",
-            "vpg_private_ip_0" : "192.168.10.200",
-            "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103",
-            "vsn_private_ip_0" : "192.168.20.250",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vpg_name_0':'vofwl01pgn${hostid}',
-            "vfw_name_0": "vofwl01vfw${hostid}",
-            "vsn_name_0": "vofwl01snk${hostid}",
-            "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "protected_private_net_id" : "vofwlsnk01_protected${hostid}",
-            "protected_private_subnet_id" : "vofwlsnk01_protected_sub${hostid}",
-            "ext_private_net_id": "onap_oam_ext",
-            "ext_private_subnet_id": "onap_oam_ext_sub",
-            "ext_private_net_cidr": "10.100.0.0/16",
-            "vfw_private_ip_1": "192.168.20.100",
-            "vfw_private_ip_2": "10.0.110.1",
-            "vfw_private_ip_3": "10.100.100.1",
-            "vsn_private_ip_1": "10.0.110.3",
-            "vsn_private_ip_0": "192.168.20.250",
-            "vsn_private_ip_2": "10.100.100.3",
-        },
-        "vfwdt_vfwsnk0_preload.template": {
-            "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
-            "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_private_ip_0" : "192.168.10.100",
-            "vpg_private_ip_0" : "192.168.10.200",
-            "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103",
-            "vsn_private_ip_0" : "192.168.20.250",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vpg_name_0':'vofwl01pgn${hostid}',
-            "vsn_name_0": "vofwl01snk${hostid}",
-            "vfw_name_0": "vofwl01vfw${hostid}",
-            "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "protected_private_net_id" : "vofwlsnk01_protected${hostid}",
-            "protected_private_subnet_id" : "vofwlsnk01_protected_sub${hostid}",
-            "ext_private_net_id": "onap_oam_ext",
-            "ext_private_subnet_id": "onap_oam_ext_sub",
-            "ext_private_net_cidr": "10.100.0.0/16",
-            "vfw_private_ip_1": "192.168.20.100",
-            "vfw_private_ip_2": "10.0.110.1",
-            "vfw_private_ip_3": "10.100.100.1",
-            "vsn_private_ip_1": "10.0.110.3",
-            "vsn_private_ip_0": "192.168.20.250",
-            "vpg_private_ip_2": "10.100.100.2",
-            "vsn_private_ip_1": "10.0.110.3",
-            "vsn_private_ip_0": "192.168.20.250",
-            "vsn_private_ip_2": "10.100.100.3"
-        },
-        "vfwdt_vfwsnk1_preload.template": {
-            "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
-            "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_private_ip_0" : "192.168.10.110",
-            "vpg_private_ip_0" : "192.168.10.200",
-            "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103",
-            "vsn_private_ip_0" : "192.168.20.250",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vpg_name_0':'vofwl01pgn${hostid}',
-            "vsn_name_0": "vofwl01snk${hostid}",
-            "vfw_name_0": "vofwl01vfw${hostid}",
-            "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "protected_private_net_id" : "vofwlsnk01_protected${hostid}",
-            "protected_private_subnet_id" : "vofwlsnk01_protected_sub${hostid}",
-            "ext_private_net_id": "onap_oam_ext",
-            "ext_private_subnet_id": "onap_oam_ext_sub",
-            "ext_private_net_cidr": "10.100.0.0/16",
-            "vfw_private_ip_1": "192.168.20.110",
-            "vfw_private_ip_2": "10.0.110.4",
-            "vfw_private_ip_3": "10.100.100.4",
-            "vpg_private_ip_0": "192.168.10.200",
-            "vpg_private_ip_1": "10.0.110.2",
-            "vpg_private_ip_2": "10.100.100.2",
-            "vsn_private_ip_0": "192.168.20.240",
-            "vsn_private_ip_1": "10.0.110.5",
-            "vsn_private_ip_2": "10.100.100.5"
-        },
-        "vlb_preload.template" : {
-            "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vdns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vdns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            'vlb_name_0':'vovlblb${hostid}',
-            'vdns_name_0':'vovlbdns${hostid}',
-            "vpg_name_0" : "vovlbpgn${hostid}",
-            "vlb_private_net_id" : "volb01_private${hostid}",
-            "vlb_private_net_cidr" : "192.168.30.0/24",
-            "pktgen_private_net_id" : "volb01_pktgen${hostid}",
-            "pktgen_private_net_cidr" : "192.168.9.0/24",
-            "vlb_int_private_ip_0" : "192.168.30.100",
-            "vlb_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.4",
-            "vlb_int_pktgen_private_ip_0" : "192.168.9.111",
-            "vdns_int_private_ip_0" : "192.168.30.110",
-            "vdns_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.5",
-            "vpg_int_pktgen_private_ip_0" : "192.168.9.110",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.7",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            "pg_int" : "192.168.9.109",
-            "vip" : "192.168.9.112",
-            "gre_ipaddr" : "192.168.30.112",
-            "vnf_id" : "vLoadBalancer_${hostid}",
-            "vf_module_id" : "vLoadBalancer"
-
-        },
-        "dnsscaling_preload.template" : {
-            "int_private_net_id" : "vLBMS_volb01_private${hostid}",
-            "int_private_subnet_id" : "vLBMS_volb01_private${hostid}_subnet",
-            "vlb_int_private_ip_0" : "192.168.30.100",
-            "vlb_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.4",
-            "vlb_int_pktgen_private_ip_0" : "192.168.9.111",
-            "vdns_int_private_ip_0" : "192.168.30.222",
-            "vdns_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.6",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vdns_name_0':'vovlbscaling${hostid}',
-            "vlb_private_net_cidr" : "192.168.30.0/24"
-        },
-        "vims_preload.template" : {
-            "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "repo_url" : "http://repo.cw-ngv.com/stable",
-            "zone" : "me.cw-ngv.com",
-            "dn_range_start" : "2425550000",
-            "dn_range_length" : "10000",
-            "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
-
-        },
-        "vvg_preload.template" : {
-        }
-    },
-# heat template parameter values for heat template instances created during Closed-Loop test cases
-    "Closed-Loop" : {
-        "vfw_preload.template": {
-            "unprotected_private_net_id" : "clfwl01_unprotected${hostid}",
-            "unprotected_private_net_cidr" : "192.168.110.0/24",
-            "protected_private_net_id" : "clfwl01_protected${hostid}",
-            "protected_private_net_cidr" : "192.168.120.0/24",
-            "vfw_int_unprotected_private_ip_0" : "192.168.110.100",
-            "vfw_int_protected_private_ip_0" : "192.168.120.100",
-            "vfw_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.11",
-            "vfw_int_protected_private_floating_ip" : "192.168.110.200",
-            "vpg_int_unprotected_private_ip_0" : "192.168.110.200",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.12",
-            "vsn_int_protected_private_ip_0" : "192.168.120.250",
-            "vsn_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.13",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vfw_name_0':'clfwl01fwl${hostid}',
-            'vpg_name_0':'clfwl01pgn${hostid}',
-            "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vsn_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vsn_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            'vsn_name_0':'clfwl01snk${hostid}'
-        },
-        "vfwsnk_preload.template": {
-            "int_unprotected_private_net_id" : "clfwlsnk_unprotected${hostid}",
-            "int_unprotected_private_subnet_id" : "clfwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "int_protected_private_net_id" : "clfwlsnk_protected${hostid}",
-            "int_protected_private_subnet_id" : "clfwlsnk_protected_sub${hostid}",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_int_unprotected_private_ip_0" : "192.168.10.100",
-            # this should be the same value as vpg_private_ip_0
-            "vfw_int_protected_private_floating_ip" : "192.168.10.200",
-            "vfw_int_protected_private_ip_0" : "192.168.20.100",
-            "vfw_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.111",
-            "vsn_int_protected_private_ip_0" : "192.168.20.250",
-            "vsn_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.112",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vfw_name_0':'clfwl01fwl${hostid}',
-            'vsn_name_0':'clfwl01snk${hostid}',
-            "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vsn_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vsn_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-        },
-        "vpkg_preload.template": {
-            "unprotected_private_net_id" : "vFWSNK_clfwlsnk_unprotected${hostid}",
-            "unprotected_private_subnet_id" : "vFWSNK_clfwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_private_ip_0" : "192.168.10.100",
-            "vpg_unprotected_private_ip_0" : "192.168.10.200",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.113",
-            "vsn_private_ip_0" : "192.168.20.250",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vpg_name_0':'clfwl01pgn${hostid}',
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-        },
-        # vLBMS
-        "vlb_preload.template" : {
-            "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vdns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vdns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            'vlb_name_0':'clvlblb${hostid}',
-            'vdns_name_0':'clvlbdns${hostid}',
-            "vpg_name_0" : "clvlbpgn${hostid}",
-            "vlb_private_net_id" : "cllb01_private${hostid}",
-            "vlb_private_net_cidr" : "192.168.30.0/24",
-            "pktgen_private_net_id" : "cllb01_pktgen${hostid}",
-            "pktgen_private_net_cidr" : "192.168.9.0/24",
-            "vlb_int_private_ip_0" : "192.168.30.100",
-            "vlb_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.14",
-            "vlb_int_pktgen_private_ip_0" : "192.168.9.111",
-            "vdns_int_private_ip_0" : "192.168.30.110",
-            "vdns_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.15",
-            "vpg_int_pktgen_private_ip_0" : "192.168.9.110",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.17",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            "pg_int" : "192.168.9.109",
-            "vip" : "192.168.9.112",
-            "gre_ipaddr" : "192.168.30.112",
-            "vnf_id" : "vLoadBalancer_${hostid}",
-            "vf_module_id" : "vLoadBalancer"
-        },
-        "dnsscaling_preload.template" : {
-            "int_private_net_id" : "vLBMS_cllb01_private${hostid}",
-            "int_private_subnet_id" : "vLBMS_cllb01_private${hostid}_subnet",
-            "vlb_int_private_ip_0" : "192.168.30.100",
-            "vlb_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.14",
-            "vlb_int_pktgen_private_ip_0" : "192.168.9.111",
-            "vdns_int_private_ip_0" : "192.168.30.222",
-            "vdns_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.16",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vdns_name_0':'clvlbscaling${hostid}',
-            "vlb_private_net_cidr" : "192.168.10.0/24"
-        },
-        "vims_preload.template" : {
-            "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "repo_url" : "http://repo.cw-ngv.com/stable",
-            "zone" : "me.cw-ngv.com",
-            "dn_range_start" : "2425550000",
-            "dn_range_length" : "10000",
-            "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
-        },
-        "vvg_preload.template" : {
-        }
-    },
- # heat template parameter values for heat template instances created for hands on demo test case
-   "Demo" : {
-        "vfw_preload.template": {
-            "unprotected_private_net_id" : "demofwl_unprotected",
-            "unprotected_private_net_cidr" : "192.168.110.0/24",
-            "protected_private_net_id" : "demofwl_protected",
-            "protected_private_net_cidr" : "192.168.120.0/24",
-            "vfw_int_unprotected_private_ip_0" : "192.168.110.100",
-            "vfw_int_protected_private_ip_0" : "192.168.120.100",
-            "vfw_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.11",
-            "vpg_int_unprotected_private_ip_0" : "192.168.110.200",
-            "vfw_int_protected_private_floating_ip" : "192.168.110.200",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.12",
-            "vsn_int_protected_private_ip_0" : "192.168.120.250",
-            "vsn_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.13",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vfw_name_0':'demofwl01fwl',
-            'vpg_name_0':'demofwl01pgn',
-            "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vsn_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vsn_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            'vsn_name_0':'demofwl01snk'
-        },
-        "vfwsnk_preload.template": {
-            "int_unprotected_private_net_id" : "demofwlsnk_unprotected${hostid}",
-            "int_unprotected_private_subnet_id" : "demofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "int_protected_private_net_id" : "demofwlsnk_protected${hostid}",
-            "int_protected_private_subnet_id" : "vofwlsnk_protected_sub${hostid}",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_int_unprotected_private_ip_0" : "192.168.10.100",
-            # this should be the same value as vpg_private_ip_0
-            "vfw_int_protected_private_floating_ip" : "192.168.10.200",
-            "vfw_int_protected_private_ip_0" : "192.168.20.100",
-            "vfw_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.121",
-            "vsn_int_protected_private_ip_0" : "192.168.20.250",
-            "vsn_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.122",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vfw_name_0':'${generic_vnf_name}',
-            'vsn_name_0':'demofwl01snk${hostid}',
-            "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vsn_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vsn_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-        },
-        "vpkg_preload.template": {
-            "unprotected_private_net_id" : "vFWSNK_demofwlsnk_unprotected${hostid}",
-            "unprotected_private_subnet_id" : "vFWSNK_demofwlsnk_unprotected_sub${hostid}",
-            "unprotected_private_net_cidr" : "192.168.10.0/24",
-            "protected_private_net_cidr" : "192.168.20.0/24",
-            "vfw_private_ip_0" : "192.168.10.100",
-            "vpg_unprotected_private_ip_0" : "192.168.10.200",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.123",
-            "vsn_private_ip_0" : "192.168.20.250",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vpg_name_0':'demofwl01pgn${hostid}',
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}"
-        },
-        # vLBMS
-        "vlb_preload.template" : {
-            "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vdns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vdns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
-            "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            'vlb_name_0':'demovlblb${hostid}',
-            'vdns_name_0':'demovlbdns${hostid}',
-            "vpg_name_0" : "clvlbpgn${hostid}",
-            "vlb_private_net_id" : "demolb_private${hostid}",
-            "vlb_private_net_cidr" : "192.168.30.0/24",
-            "pktgen_private_net_id" : "demolb_pktgen${hostid}",
-            "pktgen_private_net_cidr" : "192.168.9.0/24",
-            "vlb_int_private_ip_0" : "192.168.30.100",
-            "vlb_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.24",
-            "vlb_int_pktgen_private_ip_0" : "192.168.9.111",
-            "vdns_int_private_ip_0" : "192.168.30.110",
-            "vdns_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.25",
-            "vpg_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.27",
-            "vpg_int_pktgen_private_ip_0" : "192.168.9.110",
-            "pg_int" : "192.168.9.109",
-            "vip" : "192.168.9.112",
-            "gre_ipaddr" : "192.168.30.112",
-            "vnf_id" : "vLoadBalancer_${hostid}",
-            "vf_module_id" : "vLoadBalancer",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}"
-        },
-        "dnsscaling_preload.template" : {
-            "int_private_net_id" : "vLBMS_demolb_private${hostid}",
-            "int_private_subnet_id" : "vLBMS_demolb_private${hostid}_subnet",
-            "vlb_int_private_ip_0" : "192.168.30.100",
-            "vlb_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.24",
-            "vlb_int_pktgen_private_ip_0" : "192.168.9.111",
-            "vdns_int_private_ip_0" : "192.168.30.222",
-            "vdns_onap_private_ip_0" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.26",
-            "sec_group" : "{{ .Values.openStackSecurityGroup }}",
-            'vdns_name_0':'demovlbscaling${hostid}',
-            "vlb_private_net_cidr" : "192.168.30.0/24"
-        },
-        "vims_preload.template" : {
-            "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
-            "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
-            "repo_url" : "http://repo.cw-ngv.com/stable",
-            "zone" : "me.cw-ngv.com",
-            "dn_range_start" : "2425550000",
-            "dn_range_length" : "10000",
-            "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
-        },
-        "vvg_preload.template" : {
-        }
-    }
-}
-
-
-# Create dictionaries for new MAPPING data to join to original MAPPING data
-GLOBAL_PRELOAD_PARAMETERS2 = {}
-
-
-folder=os.path.join('/var/opt/ONAP/demo/preload_data')
-subfolders = [d for d in os.listdir(folder) if os.path.isdir(os.path.join(folder, d))]
-
-for service in subfolders:
-    filepath=os.path.join('/var/opt/ONAP/demo/preload_data', service, 'preload_data.json')
-    with open(filepath, 'r') as f:
-        preload_data = json.load(f)
-        GLOBAL_PRELOAD_PARAMETERS2['Demo']=preload_data
-
-
-# Merge dictionaries
-#    preload_data.json is for Demo key in GLOBAL_PRELOAD_PARAMETERS
-
-
-GLOBAL_PRELOAD_PARAMETERS3 = {'Demo':{}}
-
-for k, v in chain(GLOBAL_PRELOAD_PARAMETERS['Demo'].items(), GLOBAL_PRELOAD_PARAMETERS2['Demo'].items()):
-    GLOBAL_PRELOAD_PARAMETERS3['Demo'][k] =  v
-#    print(k, v)
-
-GLOBAL_PRELOAD_PARAMETERS =  dict(GLOBAL_PRELOAD_PARAMETERS.items() + GLOBAL_PRELOAD_PARAMETERS3.items())
-
-#print GLOBAL_PRELOAD_PARAMETERS
-
diff --git a/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py b/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py
deleted file mode 100644 (file)
index 1db75b0..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-# Copyright (c) 2018 Amdocs, Bell Canada, and others
-#
-# 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.
-
-# aaf info - everything is from the private oam network (also called onap private network)
-GLOBAL_AAF_SERVER = 'https://aaf-service.{{include "common.namespace" .}}:8100'
-GLOBAL_AAF_USERNAME = '{{ .Values.aafUsername }}'
-GLOBAL_AAF_PASSWORD = '{{ .Values.aafPassword }}'
-# aai info - everything is from the private oam network (also called onap private network)
-GLOBAL_AAI_SERVER_PROTOCOL = "https"
-GLOBAL_AAI_SERVER_PORT = "8443"
-GLOBAL_AAI_USERNAME = '{{ .Values.aaiUsername }}'
-GLOBAL_AAI_PASSWORD = '{{ .Values.aaiPassword}}'
-# appc info - everything is from the private oam network (also called onap private network)
-GLOBAL_APPC_SERVER_PROTOCOL = "http"
-GLOBAL_APPC_SERVER_PORT = "8282"
-GLOBAL_APPC_USERNAME = '{{ .Values.appcUsername }}'
-GLOBAL_APPC_PASSWORD = '{{ .Values.appcPassword }}'
-GLOBAL_APPC_CDT_SERVER_PROTOCOL = "https"
-GLOBAL_APPC_CDT_SERVER_PORT = "18080"
-GLOBAL_APPC_CDT_USERNAME = "demo"
-# sdc info - everything is from the private oam network (also called onap private network)
-GLOBAL_ASDC_SERVER_PROTOCOL = "http"
-GLOBAL_ASDC_FE_PORT = "8181"
-GLOBAL_ASDC_BE_PORT = "8080"
-GLOBAL_ASDC_BE_ONBOARD_PORT = "8081"
-GLOBAL_ASDC_BE_USERNAME = "beep"
-GLOBAL_ASDC_BE_PASSWORD = "boop"
-# clamp info - everything is from the private oam network (also called onap private network)
-GLOBAL_CLAMP_SERVER_PROTOCOL = "https"
-GLOBAL_CLAMP_SERVER_PORT = "8443"
-# nbi info - everything is from the private oam network (also called onap private network)
-GLOBAL_NBI_SERVER_PROTOCOL = "http"
-GLOBAL_NBI_SERVER_PORT = "8080"
-# cli info - everything is from the private oam network (also called onap private network)
-GLOBAL_CLI_SERVER_PROTOCOL = "http"
-GLOBAL_CLI_SERVER_PORT = "8080"
-# dcae info - everything is from the private oam network (also called onap private network)
-GLOBAL_DCAE_SERVER_PROTOCOL = "http"
-GLOBAL_DCAE_HEALTH_SERVER_PORT = "80"
-GLOBAL_DCAE_USERNAME = '{{ .Values.dcaeUsername }}'
-GLOBAL_DCAE_PASSWORD = '{{ .Values.dcaePassword}}'
-# dcae hv-ves info
-GLOBAL_DCAE_HVVES_SERVER_NAME = 'dcae-hv-ves-collector.{{include "common.namespace" .}}'
-GLOBAL_DCAE_HVVES_SERVER_PORT = "6061"
-# data router info - everything is from the private oam network (also called onap private network)
-GLOBAL_DMAAP_DR_PROV_SERVER_PROTOCOL = "http"
-GLOBAL_DMAAP_DR_PROV_SERVER_PORT = "8080"
-GLOBAL_DMAAP_DR_NODE_SERVER_PROTOCOL = "http"
-GLOBAL_DMAAP_DR_NODE_SERVER_PORT = "8080"
-# dmaap message router info
-GLOBAL_DMAAP_MESSAGE_ROUTER_SERVER_NAME = 'message-router.{{include "common.namespace" .}}'
-GLOBAL_DMAAP_MESSAGE_ROUTER_SERVER_PORT = "3904"
-# dmaap kafka info
-GLOBAL_DMAAP_KAFKA_SERVER_NAME = 'message-router-kafka.{{include "common.namespace" .}}'
-GLOBAL_DMAAP_KAFKA_SERVER_PORT = "9092"
-GLOBAL_DMAAP_KAFKA_JAAS_USERNAME = '{{ .Values.kafkaJaasUsername }}'
-GLOBAL_DMAAP_KAFKA_JAAS_PASSWORD = '{{ .Values.kafkaJaasPassword }}'
-# DROOL server port and credentials
-GLOBAL_DROOLS_SERVER_PORT = "9696"
-GLOBAL_DROOLS_USERNAME = '{{ .Values.droolsUsername }}'
-GLOBAL_DROOLS_PASSWORD = '{{ .Values.droolsPassword }}'
-# log server config - NOTE: no log server is run in HEAT; only on OOM
-GLOBAL_LOG_SERVER_PROTOCOL = "http"
-GLOBAL_LOG_ELASTICSEARCH_PORT = "9200"
-GLOBAL_LOG_LOGSTASH_PORT = "9600"
-GLOBAL_LOG_KIBANA_PORT = "5601"
-# pomba info - NOTE: no pomba is run in HEAT; only on OOM
-GLOBAL_POMBA_SERVER_PROTOCOL_HTTP = "http"
-GLOBAL_POMBA_SERVER_PROTOCOL_HTTPS = "https"
-GLOBAL_POMBA_AAICONTEXTBUILDER_PORT = "9530"
-GLOBAL_POMBA_SDCCONTEXTBUILDER_PORT = "9530"
-GLOBAL_POMBA_NETWORKDISCCONTEXTBUILDER_PORT = "9530"
-GLOBAL_POMBA_SERVICEDECOMPOSITION_PORT = "9532"
-GLOBAL_POMBA_SDNCCXTBUILDER_PORT = "9530"
-GLOBAL_POMBA_NETWORKDISCOVERY_MICROSERVICE_PORT = "9531"
-GLOBAL_POMBA_VALIDATIONSERVICE_PORT = "9529"
-GLOBAL_POMBA_KIBANA_PORT = "5601"
-GLOBAL_POMBA_ELASTICSEARCH_PORT = "9200"
-GLOBAL_POMBA_CONTEXTAGGREGATOR_PORT = "9529"
-
-# microservice bus info - everything is from the private oam network (also called onap private network)
-GLOBAL_MSB_SERVER_PROTOCOL = "http"
-GLOBAL_MSB_SERVER_PORT = "80"
-# message router info - everything is from the private oam network (also called onap private network)
-GLOBAL_MR_SERVER_PROTOCOL = "http"
-GLOBAL_MR_SERVER_PORT = "3904"
-# bus controller info
-GLOBAL_BC_HTTPS_SERVER_PORT = "8443"
-GLOBAL_BC_USERNAME = '{{ .Values.bcUsername }}'
-GLOBAL_BC_PASSWORD = '{{ .Values.bcPassword }}'
-# mso info - everything is from the private oam network (also called onap private network)
-GLOBAL_MSO_SERVER_PROTOCOL = "http"
-GLOBAL_MSO_SERVER_PORT = "8080"
-# SO containers
-GLOBAL_MSO_APIHAND_SERVER_PORT = "8080"
-GLOBAL_MSO_ASDCHAND_SERVER_PORT = "8085"
-GLOBAL_MSO_BPMN_SERVER_PORT = "8081"
-GLOBAL_MSO_CATDB_SERVER_PORT = "8082"
-GLOBAL_MSO_OPENSTACK_SERVER_PORT = "8087"
-GLOBAL_MSO_REQDB_SERVER_PORT = "8083"
-GLOBAL_MSO_SDNC_SERVER_PORT =  "8086"
-GLOBAL_MSO_VFC_SERVER_PORT = "8084"
-GLOBAL_MSO_VNFM_SERVER_PORT = "9092"
-GLOBAL_MSO_USERNAME = '{{ .Values.soUsername }}'
-GLOBAL_MSO_CATDB_USERNAME = '{{ .Values.soCatdbUsername }}'
-GLOBAL_MSO_PASSWORD = '{{ .Values.soPassword }}'
-# robot uses MSO_PASSWORD for both SO and CATDB
-# music info - everything is from the private oam network (also called onap private network)
-GLOBAL_MUSIC_SERVER_PROTOCOL = "http"
-GLOBAL_MUSIC_SERVER_PORT = "8080"
-# oof global info - everything is from the private oam network (also called onap private network)
-GLOBAL_OOF_SERVER_PROTOCOL = "https"
-# oof-homing info - everything is from the private oam network (also called onap private network)
-GLOBAL_OOF_HOMING_SERVER_PORT = "8091"
-GLOBAL_OOF_HOMING_USERNAME="{{ .Values.oofHomingUsername }}"
-GLOBAL_OOF_HOMING_PASSWORD="{{ .Values.oofHomingPassword }}"
-# oof-sniro info - everything is from the private oam network (also called onap private network)
-GLOBAL_OOF_SNIRO_SERVER_PORT = "8698"
-#oof user
-GLOBAL_OOF_OSDF_USERNAME="{{ .Values.oofUsername }}"
-GLOBAL_OOF_OSDF_PASSWORD="{{ .Values.oofPassword }}"
-#oof pci user
-GLOBAL_OOF_PCI_USERNAME="{{ .Values.oofOsdfPciOptUsername }}"
-GLOBAL_OOF_PCI_PASSWORD="{{ .Values.oofOsdfPciOptPassword }}"
-# oof cmso global info - everything is from the private oam network (also called onap private network)
-GLOBAL_OOF_CMSO_PROTOCOL = "https"
-GLOBAL_OOF_CMSO_SERVER_PORT = "8080"
-GLOBAL_OOF_CMSO_USERNAME = "{{ .Values.oofCmsoUsername }}"
-GLOBAL_OOF_CMSO_PASSWORD = "{{ .Values.oofCmsoPassword }}"
-# openstack info - info to select right info in environment
-# packet generate vnf info - everything is from the private oam network (also called onap private network)
-GLOBAL_PACKET_GENERATOR_PORT = "8183"
-GLOBAL_PACKET_GENERATOR_USERNAME = "admin"
-GLOBAL_PACKET_GENERATOR_PASSWORD = "admin"
-GLOBAL_PGN_PORT = "2831"
-# policy info - everything is from the private oam network (also called onap private network)
-GLOBAL_POLICY_SERVER_PROTOCOL = "https"
-GLOBAL_POLICY_SERVER_PORT = "8081"
-GLOBAL_POLICY_HEALTHCHECK_PORT = "6969"
-GLOBAL_POLICY_AUTH = '{{ .Values.policyAuth}}'
-GLOBAL_POLICY_CLIENTAUTH = '{{ .Values.policyClientAuth}}'
-GLOBAL_POLICY_USERNAME = '{{ .Values.policyUsername }}'
-GLOBAL_POLICY_PASSWORD = '{{ .Values.policyPassword }}'
-GLOBAL_POLICY_HEALTHCHECK_USERNAME = '{{ .Values.policyComponentUsername }}'
-GLOBAL_POLICY_HEALTHCHECK_PASSWORD = '{{ .Values.policyComponentPassword }}'
-# portal info - everything is from the private oam network (also called onap private network)
-GLOBAL_PORTAL_SERVER_PROTOCOL = "http"
-GLOBAL_PORTAL_SERVER_PORT = "8989"
-GLOBAL_PORTAL_USERNAME = '{{ .Values.portalUsername }}'
-GLOBAL_PORTAL_PASSWORD = '{{ .Values.portalPassword }}'
-# sdngc info - everything is from the private oam network (also called onap private network)
-GLOBAL_SDNGC_SERVER_PROTOCOL = "http"
-GLOBAL_SDNGC_REST_PORT = "8282"
-GLOBAL_SDNGC_ADMIN_PORT = "8843"
-GLOBAL_SDNGC_USERNAME = '{{ .Values.sdncUsername }}'
-GLOBAL_SDNGC_PASSWORD = '{{ .Values.sdncPassword }}'
-# sms (AAF)  info
-GLOBAL_SMS_SERVER_PROTOCOL = "https"
-GLOBAL_SMS_SERVER_NAME = 'aaf-sms.{{include "common.namespace" .}}'
-GLOBAL_SMS_SERVER_PORT = "10443"
-# vid info - everything is from the private oam network (also called onap private network)
-GLOBAL_VID_SERVER_PROTOCOL = '{{ .Values.vidServerProtocol }}'
-GLOBAL_VID_SERVER_PORT = '{{ .Values.vidServerPort }}'
-GLOBAL_VID_USERNAME = '{{ .Values.vidUsername }}'
-GLOBAL_VID_PASSWORD = '{{ .Values.vidPassword}}'
-GLOBAL_VID_HEALTH_USERNAME = '{{ .Values.vidHealthUsername }}'
-GLOBAL_VID_HEALTH_PASSWORD = '{{ .Values.vidHealthPassword }}'
-# vnfsdk info - everything is from the private oam network (also called onap private network)
-GLOBAL_VNFSDK_SERVER_PROTOCOL = "http"
-GLOBAL_VNFSDK_SERVER_PORT = "8702"
-
-GLOBAL_DCAE_VES_PROTOCOL = "http"
-GLOBAL_DCAE_VES_SERVER_PORT = "8080"
-#global selenium info
-GLOBAL_PROXY_WARNING_TITLE=""
-GLOBAL_PROXY_WARNING_CONTINUE_XPATH=""
-# dns info
-GLOBAL_DNS_TRAFFIC_DURATION = "600"
-# location where heat templates are loaded from
-GLOBAL_HEAT_TEMPLATES_FOLDER = "/var/opt/ONAP/demo/heat"
diff --git a/kubernetes/robot/resources/config/eteshare/config/vm_properties.py b/kubernetes/robot/resources/config/eteshare/config/vm_properties.py
deleted file mode 100644 (file)
index 9cc3031..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-# Copyright (c) 2018 Amdocs, Bell Canada
-#
-# 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.
-
-# File generated from /opt/config
-#
-GLOBAL_INJECTED_AAF_IP_ADDR = 'aaf-service.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_AAI1_IP_ADDR = 'aai.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_AAI2_IP_ADDR = 'N/A'
-GLOBAL_INJECTED_APPC_IP_ADDR = 'appc.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_APPC_CDT_IP_ADDR = 'appc-cdt.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_ARTIFACTS_VERSION = '{{.Values.demoArtifactsVersion}}'
-GLOBAL_INJECTED_CLAMP_IP_ADDR = 'clamp.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_CLI_IP_ADDR = 'cli.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_CLOUD_ENV = 'openstack'
-GLOBAL_INJECTED_DCAE_IP_ADDR = 'dcae-healthcheck.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_DCAE_VES_HOST = 'dcae-ves-collector.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_DMAAP_DR_PROV_IP_ADDR = 'dmaap-dr-prov.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_DMAAP_DR_NODE_IP_ADDR = 'dmaap-dr-node.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_DNS_IP_ADDR = 'N/A'
-GLOBAL_INJECTED_DOCKER_VERSION = '1.2-STAGING-latest'
-GLOBAL_INJECTED_EXTERNAL_DNS = 'N/A'
-GLOBAL_INJECTED_LOG_ELASTICSEARCH_IP_ADDR = 'log-es.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_LOG_KIBANA_IP_ADDR = 'log-kibana.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_LOG_LOGSTASH_IP_ADDR = 'log-ls-http.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_AAI_CONTEXT_BUILDER_IP_ADDR = 'pomba-aaictxbuilder.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_SDC_CONTEXT_BUILDER_IP_ADDR = 'pomba-sdcctxbuilder.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_NETWORK_DISC_CONTEXT_BUILDER_IP_ADDR = 'pomba-networkdiscoveryctxbuilder.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_SERVICE_DECOMPOSITION_IP_ADDR = 'pomba-servicedecomposition.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_SDNC_CTX_BUILDER_IP_ADDR = 'pomba-sdncctxbuilder.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_NETWORKDISCOVERY_MICROSERVICE_IP_ADDR = 'pomba-networkdiscovery.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_VALIDATION_SERVICE_IP_ADDR = 'pomba-validation-service.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_KIBANA_IP_ADDR = 'pomba-kibana.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_ELASTIC_SEARCH_IP_ADDR = 'pomba-es.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POMBA_CONTEX_TAGGREGATOR_IP_ADDR = 'pomba-contextaggregator.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_KEYSTONE = '{{ .Values.openStackKeyStoneUrl }}'
-GLOBAL_INJECTED_MR_IP_ADDR = 'message-router.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_BC_IP_ADDR = 'dmaap-bc.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_MUSIC_IP_ADDR = 'music.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_NBI_IP_ADDR = 'nbi.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_NETWORK = '{{ .Values.openStackPrivateNetId }}'
-GLOBAL_INJECTED_NEXUS_DOCKER_REPO = 'nexus3.onap.org:10001'
-GLOBAL_INJECTED_NEXUS_PASSWORD = 'docker'
-GLOBAL_INJECTED_NEXUS_REPO ='https://nexus.onap.org/content/sites/raw'
-GLOBAL_INJECTED_NEXUS_USERNAME = 'docker'
-GLOBAL_INJECTED_OOF_IP_ADDR = 'N/A'
-GLOBAL_INJECTED_OOF_HOMING_IP_ADDR = 'oof-has-api.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR = 'oof-osdf.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_OOF_CMSO_IP_ADDR = 'oof-cmso.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_MSB_IP_ADDR = 'msb-iag.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_OPENSTACK_API_KEY = '{{ .Values.config.openStackEncryptedPasswordHere}}'
-GLOBAL_INJECTED_OPENSTACK_PASSWORD = '{{ .Values.openStackPassword }}'
-GLOBAL_INJECTED_OPENSTACK_TENANT_ID = '{{ .Values.openStackTenantId }}'
-GLOBAL_INJECTED_OPENSTACK_USERNAME = '{{ .Values.openStackUserName }}'
-GLOBAL_INJECTED_OPENSTACK_PROJECT_NAME = '{{ .Values.openStackProjectName }}'
-GLOBAL_INJECTED_OPENSTACK_DOMAIN_ID = '{{ .Values.openStackDomainId }}'
-GLOBAL_INJECTED_OPENSTACK_KEYSTONE_API_VERSION = '{{ .Values.openStackKeystoneAPIVersion }}'
-GLOBAL_INJECTED_REGION_THREE = '{{ .Values.openStackRegionRegionThree }}'
-GLOBAL_INJECTED_KEYSTONE_REGION_THREE = '{{ .Values.openStackKeyStoneUrlRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_KEYSTONE_API_VERSION_REGION_THREE = '{{ .Values.openStackKeystoneAPIVersionRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_USERNAME_REGION_THREE = '{{ .Values.openStackUserNameRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_PASSWORD_REGION_THREE = '{{ .Values.openStackPasswordRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_MSO_ENCRYPTED_PASSWORD_REGION_THREE  = '{{ .Values.openSackMsoEncryptdPasswordRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_TENANT_ID_REGION_THREE = '{{ .Values.openStackTenantIdRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_PROJECT_DOMAIN_REGION_THREE = '{{ .Values.openStackProjectNameRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_USER_DOMAIN_REGION_THREE = '{{ .Values.openStackDomainIdRegionThree }}'
-GLOBAL_INJECTED_OPENSTACK_OAM_NETWORK_CIDR_PREFIX = '{{ .Values.openStackOamNetworkCidrPrefix }}'
-GLOBAL_INJECTED_OPENSTACK_PUBLIC_NETWORK = 'public'
-GLOBAL_INJECTED_POLICY_IP_ADDR = 'pdp.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = 'drools.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_PORTAL_IP_ADDR = 'portal-app.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POLICY_API_IP_ADDR = 'policy-api.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POLICY_PAP_IP_ADDR = 'policy-pap.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POLICY_DISTRIBUTION_IP_ADDR = 'policy-distribution.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POLICY_PDPX_IP_ADDR = 'policy-xacml-pdp.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_POLICY_APEX_PDP_IP_ADDR = 'policy-apex-pdp.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_PUBLIC_NET_ID = '{{ .Values.openStackPublicNetId }}'
-GLOBAL_INJECTED_REGION = '{{ .Values.openStackRegion }}'
-GLOBAL_INJECTED_SCRIPT_VERSION = '{{ .Values.scriptVersion }}'
-GLOBAL_INJECTED_SDC_BE_IP_ADDR = 'sdc-be.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SDC_BE_ONBOARD_IP_ADDR = 'sdc-onboarding-be.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SDC_FE_IP_ADDR = 'sdc-fe.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SDC_IP_ADDR = 'N/A'
-GLOBAL_INJECTED_SDNC_IP_ADDR = 'sdnc.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = 'sdnc-portal.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_APIHAND_IP_ADDR = 'so.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_ASDCHAND_IP_ADDR = 'so-sdc-controller.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_BPMN_IP_ADDR = 'so-bpmn-infra.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_CATDB_IP_ADDR = 'so-catalog-db-adapter.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_IP_ADDR = 'so.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_OPENSTACK_IP_ADDR = 'so-openstack-adapter.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_REQDB_IP_ADDR = 'so-request-db-adapter.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_SDNC_IP_ADDR = 'so-sdnc-adapter.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_VFC_IP_ADDR = 'so-vfc-adapter.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_SO_VNFM_IP_ADDR = 'so-vnfm-adapter.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_UBUNTU_1404_IMAGE = '{{ .Values.ubuntu14Image }}'
-GLOBAL_INJECTED_UBUNTU_1604_IMAGE = '{{ .Values.ubuntu16Image }}'
-GLOBAL_INJECTED_VM_IMAGE_NAME = '{{ .Values.ubuntu14Image }}'
-GLOBAL_INJECTED_VID_IP_ADDR = 'vid.{{include "common.namespace" .}}'
-GLOBAL_INJECTED_VM_FLAVOR = '{{ .Values.openStackFlavourMedium }}'
-GLOBAL_INJECTED_VNFSDK_IP_ADDR = 'refrepo.{{include "common.namespace" .}}'
-
-GLOBAL_INJECTED_PROPERTIES = {
-    "GLOBAL_INJECTED_AAF_IP_ADDR" : 'aaf-service.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_AAI1_IP_ADDR" : 'aai.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_AAI2_IP_ADDR" : 'N/A',
-    "GLOBAL_INJECTED_APPC_IP_ADDR" : 'appc.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_APPC_CDT_IP_ADDR" : 'appc-cdt.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_ARTIFACTS_VERSION" : '{{.Values.demoArtifactsVersion}}',
-    "GLOBAL_INJECTED_CLAMP_IP_ADDR" : 'clamp.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_CLI_IP_ADDR" : 'cli.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_CLOUD_ENV" : 'openstack',
-    "GLOBAL_INJECTED_DCAE_IP_ADDR" : 'dcae-healthcheck.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_DCAE_VES_HOST" : 'dcae-ves-collector.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_DMAAP_DR_PROV_IP_ADDR" : 'dmaap-dr-prov.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_DMAAP_DR_NODE_IP_ADDR" : 'dmaap-dr-node.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_DNS_IP_ADDR" : 'N/A',
-    "GLOBAL_INJECTED_DOCKER_VERSION" : '1.2-STAGING-latest',
-    "GLOBAL_INJECTED_EXTERNAL_DNS" : 'N/A',
-    "GLOBAL_INJECTED_KEYSTONE" : '{{ .Values.openStackKeyStoneUrl }}',
-    "GLOBAL_INJECTED_LOG_ELASTICSEARCH_IP_ADDR" : 'log-es.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_LOG_KIBANA_IP_ADDR" : 'log-kibana.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_LOG_LOGSTASH_IP_ADDR" : 'log-ls.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_MR_IP_ADDR" : 'message-router.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_BC_IP_ADDR" : 'dmaap-bc.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POMBA_AAI_CONTEXT_BUILDER_IP_ADDR" : 'pomba-aaictxbuilder.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POMBA_SDC_CONTEXT_BUILDER_IP_ADDR" : 'pomba-sdcctxbuilder.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POMBA_NETWORK_DISC_CONTEXT_BUILDER_IP_ADDR" : 'pomba-networkdiscovery.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POMBA_SERVICE_DECOMPOSITION_IP_ADDR" : 'pomba-servicedecomposition.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POMBA_SDNC_CTX_BUILDER_IP_ADDR" : 'pomba-sdncctxbuilder.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POMBA_CONTEX_TAGGREGATOR_IP_ADDR" : 'pomba-contextaggregator.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_MUSIC_IP_ADDR" : 'music.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_NBI_IP_ADDR" : 'nbi.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_NETWORK" : '{{ .Values.openStackPrivateNetId }}',
-    "GLOBAL_INJECTED_NEXUS_DOCKER_REPO" : 'nexus3.onap.org:10001',
-    "GLOBAL_INJECTED_NEXUS_PASSWORD" : 'docker',
-    "GLOBAL_INJECTED_NEXUS_REPO" : 'https://nexus.onap.org/content/sites/raw',
-    "GLOBAL_INJECTED_NEXUS_USERNAME" : 'docker',
-    "GLOBAL_INJECTED_OOF_IP_ADDR" : 'N/A',
-    "GLOBAL_INJECTED_OOF_HOMING_IP_ADDR" : 'oof-has-api.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR" : 'oof-osdf.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_OOF_CMSO_IP_ADDR" : 'oof-cmso.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_MSB_IP_ADDR" : 'msb-iag.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_OPENSTACK_API_KEY" : '{{ .Values.config.openStackEncryptedPasswordHere}}',
-    "GLOBAL_INJECTED_OPENSTACK_PASSWORD" : '{{ .Values.openStackPassword }}',
-    "GLOBAL_INJECTED_OPENSTACK_TENANT_ID" : '{{ .Values.openStackTenantId }}',
-    "GLOBAL_INJECTED_OPENSTACK_USERNAME" : '{{ .Values.openStackUserName }}',
-    "GLOBAL_INJECTED_OPENSTACK_PROJECT_NAME" : '{{ .Values.openStackProjectName }}',
-    "GLOBAL_INJECTED_OPENSTACK_DOMAIN_ID" : '{{ .Values.openStackDomainId }}',
-    "GLOBAL_INJECTED_OPENSTACK_KEYSTONE_API_VERSION" : '{{ .Values.openStackKeystoneAPIVersion }}',
-    "GLOBAL_INJECTED_REGION_THREE" : '{{ .Values.openStackRegionRegionThree }}',
-    "GLOBAL_INJECTED_KEYSTONE_REGION_THREE" : '{{ .Values.openStackKeyStoneUrlRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_KEYSTONE_API_VERSION_REGION_THREE" : '{{ .Values.openStackKeystoneAPIVersionRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_USERNAME_REGION_THREE" : '{{ .Values.openStackUserNameRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_PASSWORD_REGION_THREE" : '{{ .Values.openStackPasswordRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_MSO_ENCRYPTED_PASSWORD_REGION_THREE" : '{{ .Values.openSackMsoEncryptdPasswordRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_TENANT_ID_REGION_THREE" : '{{ .Values.openStackTenantIdRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_PROJECT_DOMAIN_REGION_THREE" : '{{ .Values.openStackProjectNameRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_USER_DOMAIN_REGION_THREE" : '{{ .Values.openStackDomainIdRegionThree }}',
-    "GLOBAL_INJECTED_OPENSTACK_OAM_NETWORK_CIDR_PREFIX" : '{{ .Values.openStackOamNetworkCidrPrefix }}',
-    "GLOBAL_INJECTED_OPENSTACK_PUBLIC_NETWORK" : 'public',
-    "GLOBAL_INJECTED_POLICY_IP_ADDR" : 'pdp.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : 'drools.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POLICY_API_IP_ADDR" : 'policy-api.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POLICY_PAP_IP_ADDR" : 'policy-pap.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POLICY_DISTRIBUTION_IP_ADDR" : 'policy-distribution.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POLICY_PDPX_IP_ADDR" :  'policy-xacml-pdp.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_POLICY_APEX_PDP_IP_ADDR" : 'policy-apex-pdp.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_PORTAL_IP_ADDR" : 'portal-app.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_PUBLIC_NET_ID" : '{{ .Values.openStackPublicNetId }}',
-    "GLOBAL_INJECTED_REGION" : '{{ .Values.openStackRegion }}',
-    "GLOBAL_INJECTED_SDC_BE_IP_ADDR" : 'sdc-be.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SDC_BE_ONBOARD_IP_ADDR" : 'sdc-onboarding-be.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SDC_FE_IP_ADDR" : 'sdc-fe.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SDC_IP_ADDR" : 'N/A',
-    "GLOBAL_INJECTED_SCRIPT_VERSION" : '{{ .Values.scriptVersion }}',
-    "GLOBAL_INJECTED_SDNC_IP_ADDR" : 'sdnc.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR" : 'sdnc-portal.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_APIHAND_IP_ADDR" : 'so.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_ASDCHAND_IP_ADDR" : 'so-sdc-controller.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_BPMN_IP_ADDR" : 'so-bpmn-infra.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_CATDB_IP_ADDR" : 'so-catalog-db-adapter.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_IP_ADDR" : 'so.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_OPENSTACK_IP_ADDR" : 'so-openstack-adapter.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_REQDB_IP_ADDR" : 'so-request-db-adapter.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_SDNC_IP_ADDR" : 'so-sdnc-adapter.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_VFC_IP_ADDR" : 'so-vfc-adapter.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_SO_VNFM_IP_ADDR" : 'so-vnfm-adapter.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_UBUNTU_1404_IMAGE" : '{{.Values.ubuntu14Image}}',
-    "GLOBAL_INJECTED_UBUNTU_1604_IMAGE" : '{{.Values.ubuntu16Image}}',
-    "GLOBAL_INJECTED_VM_IMAGE_NAME" : '{{ .Values.ubuntu14Image }}',
-    "GLOBAL_INJECTED_VID_IP_ADDR" : 'vid.{{include "common.namespace" .}}',
-    "GLOBAL_INJECTED_VM_FLAVOR" : '{{ .Values.openStackFlavourMedium }}',
-    "GLOBAL_INJECTED_VNFSDK_IP_ADDR" : 'refrepo.{{include "common.namespace" .}}'
-
-}
diff --git a/kubernetes/robot/values.yaml b/kubernetes/robot/values.yaml
deleted file mode 100644 (file)
index 65da947..0000000
+++ /dev/null
@@ -1,236 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# 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.
-
-#################################################################
-# Global configuration defaults.
-#################################################################
-global: # global defaults
-  nodePortPrefix: 302
-  ubuntuInitRepository: registry.hub.docker.com
-  persistence: {}
-
-# application image
-repository: nexus3.onap.org:10001
-image: onap/testsuite:1.4.2
-pullPolicy: Always
-
-ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
-
-# flag to enable debugging - application support required
-debugEnabled: false
-
-#################################################################
-# Application configuration defaults.
-#################################################################
-config:
-
-# openStackEncryptedPasswordHere should match the encrypted string used in SO and APPC and overridden per environment
-  openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
-
-# Demo configuration
-# Nexus demo artifact version.  Maps to GLOBAL_INJECTED_ARTIFACTS_VERSION
-demoArtifactsVersion: "1.4.0"
-# Nexus demo artifact URL.
-demoArtifactsRepoUrl: "https://nexus.onap.org/content/repositories/releases"
-# Openstack medium sized flavour name.  Maps GLOBAL_INJECTED_VM_FLAVOR
-openStackFlavourMedium: "m1.medium"
-# Openstack keystone URL.  Maps to GLOBAL_INJECTED_KEYSTONE
-openStackKeyStoneUrl: "http://1.2.3.4:5000"
-# UUID of the Openstack network that can assign floating ips.  Maps to GLOBAL_INJECTED_PUBLIC_NET_ID
-openStackPublicNetId: "e8f51958045716781ffc"
-# password for Openstack tenant where VNFs will be spawned.  Maps to GLOBAL_INJECTED_OPENSTACK_PASSWORD
-openStackPassword: "tenantPassword"
-# Openstack region.  Maps to GLOBAL_INJECTED_REGION
-openStackRegion: "RegionOne"
-# Openstack tenant UUID where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_TENANT_ID
-openStackTenantId: "47899782ed714295b1151681fdfd51f5"
-# username for Openstack tenant where VNFs will be spawned.  Maps to GLOBAL_INJECTED_OPENSTACK_USERNAME
-openStackUserName: "tenantUsername"
-# Project name of Openstack where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_PROJECT_NAME
-openStackProjectName: "onap"
-# Domain id of openstack where VNFs will be deployed. Maps to GLOBAL_INJECTED_OPENSTACK_DOMAIN_ID
-openStackDomainId: "Default"
-# Openstack Keystone API version. Valid values are [ v2.0, v3 ]. Maps to GLOBAL_INJECTED_OPENSTACK_KEYSTONE_API_VERSION
-openStackKeystoneAPIVersion: "v2.0"
-# Values for second cloud instante for VNF instantiatioen testing and keystone v3
-openStackRegionRegionThree: "RegionThree"
-openStackKeyStoneUrlRegionThree: "http://1.2.3.4:5000"
-openStackKeystoneAPIVersionRegionThree: "v3"
-openStackUserNameRegionThree: "demo"
-openStackPasswordRegionThree: "tenantPassword"
-# this is the java encrypted password that is needed for SO
-openSackMsoEncryptdPasswordRegionThree: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
-openStackTenantIdRegionThree: "3583253e932845a09cd4c8ca2f31d095"
-openStackProjectNameRegionThree: "Integration-SB-RegionThree"
-openStackDomainIdRegionThree: "Default"
-#
-# Openstack glance image name for Ubuntu 14.  Maps to GLOBAL_INJECTED_UBUNTU_1404_IMAGE
-ubuntu14Image: "Ubuntu_14_trusty"
-# Openstack glance image name for Ubuntu 16.  Maps to GLOBAL_INJECTED_UBUNTU_1604_IMAGE
-ubuntu16Image: "Ubuntu_16_xenial"
-# GLOBAL_INJECTED_SCRIPT_VERSION.  Maps to GLOBAL_INJECTED_SCRIPT_VERSION
-scriptVersion: "1.4.0"
-# Openstack network to which VNFs will bind their primary (first) interface.  Maps to GLOBAL_INJECTED_NETWORK
-openStackPrivateNetId: "e8f51956-00dd-4425-af36-045716781ffc"
-# Openstack security group for instantiating VNFs
-openStackSecurityGroup: "onap_sg"
-# SDNC Preload configuration
-# Openstack subnet UUID for the network defined by openStackPrivateNetId.  Maps to onap_private_subnet_id
-openStackPrivateSubnetId: "e8f51956-00dd-4425-af36-045716781ffc"
-# CIDR notation for the Openstack private network where VNFs will be spawned.  Maps to onap_private_net_cidr
-openStackPrivateNetCidr: "10.0.0.0/8"
-# The first 2 octets of the private Openstack subnet where VNFs will be spawned.
-# Needed because sdnc preload templates hardcodes things like this 10.0.${ecompnet}.X
-openStackOamNetworkCidrPrefix: "10.0"
-# VID protocol/port until Selenium issue with SSL resolved
-# https/8443 vs http/8080
-vidServerProtocol:  "http"
-vidServerPort:  "8080"
-# Override with Pub Key for access to VNF
-vnfPubKey: "FILL_IN_WITH_PUB_KEY"
-# Override with DCAE VES Collector external IP
-dcaeCollectorIp: "FILL_IN_WITH_DCAE_VES_COLLECTOR_IP"
-
-# Credentials for ONAP Component
-# AAF
-aafUsername: "demo@people.osaaf.org"
-aafPassword: "demo123456!"
-# AAI
-aaiUsername: "aai@aai.onap.org"
-aaiPassword: "demo123456!"
-# APPC
-appcUsername: "appc@appc.onap.org"
-appcPassword: "demo123456!"
-# DCAE
-dcaeUsername: "console"
-dcaePassword: "ZjJkYjllMjljMTI2M2Iz"
-# DROOLS
-droolsUsername: "demo@people.osaaf.org"
-droolsPassword: "demo123456!"
-# OOF
-oofCmsoUsername: "oof@oof.onap.org"
-oofCmsoPassword: "demo123456!"
-# POLICY
-policyAuth: "dGVzdHBkcDphbHBoYTEyMw=="
-policyClientAuth: "cHl0aG9uOnRlc3Q="
-policyUsername: "demo@people.osaaf.org"
-policyPassword: "demo123456!"
-policyComponentUsername: "healthcheck"
-policyComponentPassword: "zb!XztG34"
-# PORTAL
-portalUsername: "demo"
-portalPassword: "Kp8bJ4SXszM0WXlhak3eHlcse"
-# SO
-soUsername: "InfraPortalClient"
-soPassword: "password1$"
-soCatdbUsername: "bpel"
-soCatdbPassword: "password1$"
-# SDNC
-sdncUsername: "admin"
-sdncPassword: "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
-# VID
-vidUsername: "demo"
-vidPassword: "Kp8bJ4SXszM0WX"
-vidHealthUsername: "Default"
-vidHealthPassword: "AppPassword!1"
-# DMAAP BC
-bcUsername: "dmaap-bc@dmaap-bc.onap.org"
-bcPassword: "demo123456!"
-# DMAAP KAFKA JAAS
-kafkaJaasUsername: "admin"
-kafkaJaasPassword: "admin_secret"
-
-#OOF
-oofUsername: "oof@oof.onap.org"
-oofPassword: "demo123456!"
-cmsoUsername: "oof@oof.onap.org"
-cmsoPassword: "demo123456!"
-oofOsdfPciOptUsername: "oof@oof.onap.org"
-oofOsdfPciOptPassword: "demo123456!"
-oofHomingUsername: "admin1"
-oofHomingPassword: "plan.15"
-
-
-# default number of instances
-replicaCount: 1
-
-nodeSelector: {}
-
-affinity: {}
-
-# Resource Limit flavor -By Default using small
-flavor: small
-# Segregation for Different environment (Small and Large)
-resources:
-  small:
-    limits:
-      cpu: 2000m
-      memory: 4Gi
-    requests:
-      cpu: 500m
-      memory: 1Gi
-  large:
-    limits:
-      cpu: 4000m
-      memory: 8Gi
-    requests:
-      cpu: 1000m
-      memory: 2Gi
-  unlimited: {}
-
-# probe configuration parameters
-liveness:
-  initialDelaySeconds: 180
-  periodSeconds: 10
-  # necessary to disable liveness probe when setting breakpoints
-  # in debugger so K8s doesn't restart unresponsive container
-  enabled: true
-
-readiness:
-  initialDelaySeconds: 180
-  periodSeconds: 10
-
-service:
-  name: robot
-  type: NodePort
-  portName: httpd
-  externalPort: 88
-  internalPort: 88
-  nodePort: "09"
-
-ingress:
-  enabled: false
-
-## Persist data to a persitent volume
-persistence:
-  enabled: true
-
-  ## A manually managed Persistent Volume and Claim
-  ## Requires persistence.enabled: true
-  ## If defined, PVC must be created manually before volume will be bound
-  # existingClaim:
-  volumeReclaimPolicy: Retain
-
-  ## database data Persistent Volume Storage Class
-  ## If defined, storageClassName: <storageClass>
-  ## If set to "-", storageClassName: "", which disables dynamic provisioning
-  ## If undefined (the default) or set to null, no storageClassName spec is
-  ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
-  ##   GKE, AWS & OpenStack)
-  ##
-  # storageClass: "-"
-  accessMode: ReadWriteMany
-  size: 2Gi
-  mountPath: /dockerdata-nfs
-  mountSubPath: robot/logs
index 46e2d5c..abcd09d 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: Service Design and Creation Umbrella Helm charts
 name: sdc
-version: 4.0.0
+version: 5.0.0
index fab2243..33852a3 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Backend API
 name: sdc-be
-version: 4.0.0
+version: 5.0.0
index 3363700..b202880 100644 (file)
@@ -28,8 +28,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-backend:1.4.1
-backendInitImage: onap/sdc-backend-init:1.4.1
+image: onap/sdc-backend:1.5.1
+backendInitImage: onap/sdc-backend-init:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -93,3 +93,4 @@ resources:
       cpu: 20m
       memory: 2Gi
   unlimited: {}
+
index 0537757..6d0df56 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Cassandra
 name: sdc-cs
-version: 4.0.0
+version: 5.0.0
index bf909ad..49e5ac0 100644 (file)
@@ -28,8 +28,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-cassandra:1.4.1
-cassandraInitImage: onap/sdc-cassandra-init:1.4.1
+image: onap/sdc-cassandra:1.5.1
+cassandraInitImage: onap/sdc-cassandra-init:1.5.1
 
 pullPolicy: Always
 
index 050a093..fcc2e68 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP SDC DCAE Backend client of TOSCALAB and SDC
 name: sdc-dcae-be
-version: 4.0.0
+version: 5.0.0
index bf1d9b4..0e4d4fb 100644 (file)
@@ -27,9 +27,9 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-be:1.3.0
+image: onap/dcae-be:1.3.1
 pullPolicy: Always
-backendInitImage: onap/dcae-tools:1.3.0
+backendInitImage: onap/dcae-tools:1.3.1
 
 # flag to enable debugging - application support required
 debugEnabled: false
index 75f5b2b..1f3ee3b 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description:  ONAP DCAE desiner composition tool for creating customized templates
 name: sdc-dcae-dt
-version: 4.0.0
+version: 5.0.0
index 2b8fd90..f586f27 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-dt:1.2.0
+image: onap/dcae-dt:1.3.1
 pullPolicy: IfNotPresent
 config:
   javaOptions: -XX:MaxPermSize=256m -Xmx1024m -Dconfig.home=config -Dlog.home=/var/lib/jetty/logs/ -Dlogging.config=config/dcae-dt/logback-spring.xml
index 5679cde..2ce7ed3 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP SDC DCAE UI for service monitoring and MC create and configure
 name: sdc-dcae-fe
-version: 4.0.0
+version: 5.0.0
index 4b40bce..b6ea577 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-fe:1.3.0
+image: onap/dcae-fe:1.3.1
 pullPolicy: Always
 config:
   javaOptions: -XX:MaxPermSize=256m -Xmx1024m -Dconfig.home=config -Dlog.home=/var/lib/jetty/logs/ -Dlogging.config=config/dcae-fe/logback-spring.xml
index e69503f..bdee850 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Tosca model for component monitoring and descriptors deployment
 name: sdc-dcae-tosca-lab
-version: 4.0.0
+version: 5.0.0
index e787948..06169df 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-tosca-app:1.3.0
+image: onap/dcae-tosca-app:1.3.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 7254f68..d1c46d0 100644 (file)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Elasticsearch
 name: sdc-es
-version: 4.0.0
+version: 5.0.0
index 25d75b7..4c0a6cc 100644 (file)
@@ -31,8 +31,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-elasticsearch:1.4.1
-elasticInitImage: onap/sdc-init-elasticsearch:1.4.1
+image: onap/sdc-elasticsearch:1.5.1
+elasticInitImage: onap/sdc-init-elasticsearch:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index a249a5b..f171607 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Front End
 name: sdc-fe
-version: 4.0.0
+version: 5.0.0
index 36607c7..fba4c56 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-frontend:1.4.1
+image: onap/sdc-frontend:1.5.1
 pullPolicy: Always
 
 config:
index 3b87b1e..d6f0b32 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Kibana
 name: sdc-kb
-version: 4.0.0
+version: 5.0.0
index 64ab496..e120365 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-kibana:1.4.1
+image: onap/sdc-kibana:1.5.1
 pullPolicy: Always
 
 config:
index 9f22430..9dae6d2 100644 (file)
@@ -16,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Onboarding API
 name: sdc-onboarding-be
-version: 4.0.0
+version: 5.0.0
index 2a6918d..32b8cdb 100644 (file)
@@ -28,8 +28,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-onboard-backend:1.4.1
-onboardingInitImage: onap/sdc-onboard-cassandra-init:1.4.1
+image: onap/sdc-onboard-backend:1.5.1
+onboardingInitImage: onap/sdc-onboard-cassandra-init:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index feac7ac..7ae97cf 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Workflow Designer backend
 name: sdc-wfd-be
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index d5e6927..008e807 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Workflow Designer frontend
 name: sdc-wfd-fe
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index d051eaf..e10de6d 100644 (file)
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+{{- define "rules.wf" -}}
+- http:
+    paths:
+      - path: /workflows/
+        backend:
+          serviceName: {{.Values.service.name}}
+          servicePort: {{.Values.service.internalPort}}
+{{- end -}}
+
 {{- if .Values.ingress.enabled }}
+
 apiVersion: extensions/v1beta1
 kind: Ingress
 metadata:
@@ -29,11 +39,21 @@ metadata:
 {{- end }}
 spec:
   rules:
-  - http:
-      paths:
-      - path: /workflows/
-        backend:
-          serviceName: {{.Values.service.name}}
-          servicePort: {{.Values.service.internalPort}}
+{{- if .Values.ingress.hosts}}
+{{- range .Values.ingress.hosts}}
+{{- include "rules.wf" $ | nindent 2}}
+{{- if .}}
+    host: {{. | quote}}
+{{- end}}
+{{- end}}
+  tls:
+  - hosts:
+{{- range .Values.ingress.hosts}}
+{{- if .}}
+    - {{ . | quote }}
+{{- end}}
+{{- end }}
+{{- else}}
+{{- include "rules.wf" . | nindent 2}}
+{{- end}}
 {{ end }}
-
index d26c927..639c811 100644 (file)
@@ -80,6 +80,7 @@ service:
 
 ingress:
   enabled: false
+  hosts: ~
   annotations:
     ingress.kubernetes.io/secure-backends: "false"
     nginx.ingress.kubernetes.io/secure-backends: "false"
index e966131..134205a 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
 
   - name: cassandra
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 0c42d86..577eb96 100755 (executable)
@@ -97,7 +97,7 @@
             "commitlog_dir": "/var/lib/cassandra/commitlog",
             "socket_read_timeout": "20000",
             "socket_connect_timeout": "20000",
-            "titan_connection_timeout": "10000",
+            "janusgraph_connection_timeout": "10000",
             "replication_factor": "{{.Values.global.cassandra.replicaCount}}"
         }
     }
index 7b04c64..e618e4f 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: SDN Controller
 name: sdnc
-version: 4.0.0
+version: 5.0.0
index aceda60..f63b09e 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: SDNC DMaaP Listener
 name: dmaap-listener
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 71fbbc5..79d7de4 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index cd1a887..600bae2 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdnc-dmaap-listener-image:1.5.4
+image: onap/sdnc-dmaap-listener-image:1.7.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index de678bf..114a688 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: SDN-C Ansible Server
 name: sdnc-ansible-server
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index a7e249a..8651e32 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdnc-ansible-server-image:1.5.4
+image: onap/sdnc-ansible-server-image:1.7.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 9efac5c..68d8b42 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: SDN-C Admin Portal
 name: sdnc-portal
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1d30dfd..1063d17 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
\ No newline at end of file
index ef76ed3..31575ca 100644 (file)
@@ -27,13 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/admportal-sdnc-image:1.5.4
-pullPolicy: Always
-
-# flag to enable debugging - application support required
-debugEnabled: false
-
-# application configuration
+image: onap/admportal-sdnc-image:1.7.0
 config:
   dbRootPassword: secretpassword
   dbSdnctlPassword: gamma
@@ -48,7 +42,7 @@ config:
     internalPort: 3306
 
 # default number of instances
-replicaCount: 0
+replicaCount: 1
 
 nodeSelector: {}
 
index da6342c..fbac3ed 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: SDNC UEB Listener
 name: ueb-listener
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 71fbbc5..79d7de4 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index 7c985ce..a6040f0 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdnc-ueb-listener-image:1.5.4
+image: onap/sdnc-ueb-listener-image:1.7.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index a4bffc0..913fed1 100644 (file)
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: cds
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: cds.enabled
   - name: network-name-gen
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: dgbuilder
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: sdnc-prom
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: config.geoEnabled
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: config.localDBCluster
 
index 2a733de..455cb83 100644 (file)
 ###
 
 SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
-MYSQL_HOST=${MYSQL_HOST:-{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+ETC_DIR=${ETC_DIR:-${SDNC_HOME}/data}
+BIN_DIR=${BIN_DIR-${SDNC_HOME}/bin}
+MYSQL_HOST=${MYSQL_HOST:-dbhost}
+MYSQL_PASSWORD=${MYSQL_PASSWORD:-openECOMP1.0}
 
 SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
-SDNC_DB_PASSWD=${SDNC_DB_PASSWD:-gamma}
+SDNC_DB_PASSWORD=${SDNC_DB_PASSWORD:-gamma}
 SDNC_DB_DATABASE=${SDN_DB_DATABASE:-sdnctl}
 
 
 # Create tablespace and user account
-mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} mysql <<-END
-CREATE DATABASE ${SDNC_DB_DATABASE};
-CREATE USER '${SDNC_DB_USER}'@'localhost' IDENTIFIED BY '${SDNC_DB_PASSWD}';
-CREATE USER '${SDNC_DB_USER}'@'%' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWORD} mysql <<-END
+CREATE DATABASE IF NOT EXISTS ${SDNC_DB_DATABASE};
+CREATE USER '${SDNC_DB_USER}'@'localhost' IDENTIFIED BY '${SDNC_DB_PASSWORD}';
+CREATE USER '${SDNC_DB_USER}'@'%' IDENTIFIED BY '${SDNC_DB_PASSWORD}';
 GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'localhost' WITH GRANT OPTION;
 GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'%' WITH GRANT OPTION;
+flush privileges;
 commit;
 END
 
 # load schema
-if [ -f ${SDNC_HOME}/data/sdnctl.dump ]
+if [ -f ${ETC_DIR}/sdnctl.dump ]
 then
-  mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/sdnctl.dump
+  mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWORD} sdnctl < ${ETC_DIR}/sdnctl.dump
 fi
 
-for datafile in ${SDNC_HOME}/data/*.data.dump
+for datafile in ${ETC_DIR}/*.data.dump
 do
-  mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} sdnctl < $datafile
+  mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWORD} sdnctl < $datafile
 done
 
 # Create VNIs 100-199
-${SDNC_HOME}/bin/addVnis.sh 100 199
+${BIN_DIR}/addVnis.sh 100 199
 
 # Drop FK_NETWORK_MODEL foreign key as workaround for SDNC-291.
-${SDNC_HOME}/bin/rmForeignKey.sh NETWORK_MODEL FK_NETWORK_MODEL
+${BIN_DIR}/rmForeignKey.sh NETWORK_MODEL FK_NETWORK_MODEL
+
+if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
+then
+    echo "Installing directed graphs"
+     ${SDNC_HOME}/svclogic/bin/install.sh
+fi
+
+
+exit 0
index eb49a69..5586ebb 100755 (executable)
@@ -118,12 +118,8 @@ ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJv
 SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
 SDNC_BIN=${SDNC_BIN:-/opt/onap/sdnc/bin}
 CCSDK_HOME=${CCSDK_HOME:-/opt/onap/ccsdk}
-SLEEP_TIME=${SLEEP_TIME:-120}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
-MYSQL_HOST=${MYSQL_HOST:-{{.Values.config.dbServiceName}}.{{.Release.Namespace}}}
 ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
 GEO_ENABLED=${GEO_ENABLED:-false}
-DBINIT_DIR=${DBINIT_DIR:-/opt/opendaylight/current/daexim}
 SDNRWT=${SDNRWT:-false}
 SDNRWT_BOOTFEATURES=${SDNRWT_BOOTFEATURES:-sdnr-wt-feature-aggregator}
 export ODL_ADMIN_PASSWORD ODL_ADMIN_USERNAME
@@ -133,44 +129,13 @@ echo "  ENABLE_ODL_CLUSTER=$ENABLE_ODL_CLUSTER"
 echo "  SDNC_REPLICAS=$SDNC_REPLICAS"
 echo "  SDNRWT=$SDNRWT"
 
-#
-# Wait for database to init properly
-#
-echo "Waiting for mysql"
-until mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} mysql &> /dev/null
-do
-  printf "."
-  sleep 1
-done
-echo -e "\nmysql ready"
-
-if [ ! -d ${DBINIT_DIR} ]
-then
-    mkdir -p ${DBINIT_DIR}
-fi
 
-if [ ! -f ${DBINIT_DIR}/.installed ]
-then
-        echo "Installing SDNC database"
-        ${SDNC_HOME}/bin/installSdncDb.sh
-
-        if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
-        then
-                echo "Installing directed graphs"
-                ${SDNC_HOME}/svclogic/bin/install.sh
-        fi
-
-        echo "Installed at `date`" > ${DBINIT_DIR}/.installed
-fi
 
 if [ ! -f ${SDNC_HOME}/.installed ]
 then
        echo "Installing SDN-C keyStore"
        ${SDNC_HOME}/bin/addSdncKeyStore.sh
 
-       # No longer needed (this was a workaround for bug in Nitrogen)
-       #${CCSDK_HOME}/bin/installOdlHostKey.sh
-
        if $ENABLE_ODL_CLUSTER ; then enable_odl_cluster ; fi
 
        if $SDNRWT ; then install_sdnrwt_features ; fi
diff --git a/kubernetes/sdnc/resources/config/conf/akka.conf b/kubernetes/sdnc/resources/config/conf/akka.conf
new file mode 100644 (file)
index 0000000..8440a9d
--- /dev/null
@@ -0,0 +1,80 @@
+
+odl-cluster-data {
+  akka {
+    remote {
+      artery {
+        enabled = off
+        canonical.hostname = "127.0.0.1"
+        canonical.port = 2550
+      }
+      netty.tcp {
+        hostname = "127.0.0.1"
+        port = 2550
+      }
+
+      use-passive-connections = off
+      # when under load we might trip a false positive on the failure detector
+      # transport-failure-detector {
+      # heartbeat-interval = 4 s
+      # acceptable-heartbeat-pause = 16s
+      # }
+    }
+
+    actor {
+      debug {
+        autoreceive = on
+        lifecycle = on
+        unhandled = on
+        fsm = on
+        event-stream = on
+      }
+    }
+
+    cluster {
+      # Remove ".tcp" when using artery.
+      seed-nodes = ["akka.tcp://opendaylight-cluster-data@127.0.0.1:2550"]
+
+      seed-node-timeout = {{.Values.config.odl.akka.seedNodeTimeout}}
+
+      roles = ["member-1"]
+
+    }
+
+    persistence {
+      # By default the snapshots/journal directories live in KARAF_HOME. You can choose to put it somewhere else by
+      # modifying the following two properties. The directory location specified may be a relative or absolute path.
+      # The relative path is always relative to KARAF_HOME.
+
+      # snapshot-store.local.dir = "target/snapshots"
+      # journal.leveldb.dir = "target/journal"
+
+      journal {
+        leveldb {
+            # Set native = off to use a Java-only implementation of leveldb.
+            # Note that the Java-only version is not currently considered by Akka to be production quality.
+
+            # native = off
+        }
+
+        journal-plugin-fallback {
+          circuit-breaker {
+              max-failures = {{.Values.config.odl.akka.circuitBreaker.maxFailures}}
+              call-timeout = {{.Values.config.odl.akka.circuitBreaker.callTimeout}}
+              reset-timeout = {{.Values.config.odl.akka.circuitBreaker.resetTimeout}}
+          }
+          recovery-event-timeout = {{.Values.config.odl.akka.recoveryEventTimeout}}
+        }
+
+        snapshot-store-plugin-fallback {
+          circuit-breaker {
+            max-failures = {{.Values.config.odl.akka.circuitBreaker.maxFailures}}
+            call-timeout = {{.Values.config.odl.akka.circuitBreaker.callTimeout}}
+            reset-timeout = {{.Values.config.odl.akka.circuitBreaker.resetTimeout}}
+          }
+          recovery-event-timeout = {{.Values.config.odl.akka.recoveryEventTimeout}}
+        }
+      }
+    }
+  }
+}
+
diff --git a/kubernetes/sdnc/resources/config/conf/org.opendaylight.controller.cluster.datastore.cfg b/kubernetes/sdnc/resources/config/conf/org.opendaylight.controller.cluster.datastore.cfg
new file mode 100644 (file)
index 0000000..29dd0e5
--- /dev/null
@@ -0,0 +1,107 @@
+# This file specifies property settings for the clustered data store to control its behavior. A
+# property may be applied to every data store type ("config" and "operational") or can be customized
+# differently for each data store type by prefixing the data store type + '.'. For example, specifying
+# the "shard-election-timeout-factor" property would be applied to both data stores whereas specifying
+# "operational.shard-election-timeout-factor" would only apply to the "operational" data store. Similarly,
+# specifying "config.shard-election-timeout-factor" would only apply to the "config" data store.
+
+# The multiplication factor to be used to determine shard election timeout. The shard election timeout
+# is determined by multiplying shardHeartbeatIntervalInMillis with the shardElectionTimeoutFactor.
+shard-election-timeout-factor=20
+
+# The interval at which a shard will send a heart beat message to its remote shard.
+#shard-heartbeat-interval-in-millis=500
+
+# The amount by which to divide election timeout in case of a candidate. This serves as a counter-balance
+# to shard-election-timeout-factor. The default value is 1, i.e. election timeout is the same in all
+# situations.
+#shard-candidate-election-timeout-divisor=1
+
+# The maximum amount of time to wait for a shard to elect a leader before failing an operation (eg transaction create).
+#shard-leader-election-timeout-in-seconds=30
+
+# Enable or disable data persistence.
+#persistent=true
+
+# Disable persistence for the operational data store by default.
+operational.persistent=false
+
+# The maximum amount of time a shard transaction can be idle without receiving any messages before it self-destructs.
+#shard-transaction-idle-timeout-in-minutes=10
+
+# The maximum amount of time a shard transaction three-phase commit can be idle without receiving the
+# next messages before it aborts the transaction.
+#shard-transaction-commit-timeout-in-seconds=30
+
+# The maximum allowed capacity for each shard's transaction commit queue.
+#shard-transaction-commit-queue-capacity=20000
+
+# The maximum amount of time to wait for a shard to initialize from persistence on startup before
+# failing an operation (eg transaction create and change listener registration).
+#shard-initialization-timeout-in-seconds=300
+
+# The minimum number of entries to be present in the in-memory journal log before a snapshot is to be taken.
+#shard-snapshot-batch-count=20000
+
+# The percentage of Runtime.totalMemory() used by the in-memory journal log before a snapshot is to be taken.
+#shard-snapshot-data-threshold-percentage=12
+
+# The interval at which the leader of the shard will check if its majority followers are active and
+# term itself as isolated.
+#shard-isolated-leader-check-interval-in-millis=5000
+
+# The number of transaction modification operations (put, merge, delete) to batch before sending to the
+# shard transaction actor. Batching improves performance as less modifications messages are sent to the
+# actor and thus lessens the chance that the transaction actor's mailbox queue could get full.
+#shard-batched-modification-count=1000
+
+# The maximum amount of time for akka operations (remote or local) to complete before failing.
+#operation-timeout-in-seconds=5
+
+# The initial number of transactions per second that are allowed before the data store should begin
+# applying back pressure. This number is only used as an initial guidance, subsequently the datastore
+# measures the latency for a commit and auto-adjusts the rate limit.
+#transaction-creation-initial-rate-limit=100
+
+# The maximum thread pool size for each shard's data store data change notification executor.
+#max-shard-data-change-executor-pool-size=20
+
+# The maximum queue size for each shard's data store data change notification executor.
+#max-shard-data-change-executor-queue-size=1000
+
+# The maximum queue size for each shard's data store data change listener.
+#max-shard-data-change-listener-queue-size=1000
+
+# The maximum queue size for each shard's data store executor.
+#max-shard-data-store-executor-queue-size=5000
+
+# A fully qualified java class name. The class should implement
+# org.opendaylight.controller.cluster.raft.policy.RaftPolicy. This java class should be
+# accessible to the distributed data store OSGi module so that it can be dynamically loaded via
+# reflection. For now let's assume that these classes to customize raft behaviors should be
+# present in the distributed data store module itself. If this property is set to a class which
+# cannot be found then the default raft policy will be applied
+#custom-raft-policy-implementation=
+
+# When fragmenting messages thru the akka remoting framework, this is the maximum size in bytes
+# for a message slice.
+#maximum-message-slice-size=20480000
+
+# Enable tell-based protocol between frontend (applications) and backend (shards). Using this protocol
+# should avoid AskTimeoutExceptions seen under heavy load. Defaults to false (use ask-based protocol).
+#use-tell-based-protocol=true
+
+# Tune the maximum number of entries a follower is allowed to lag behind the leader before it is
+# considered out-of-sync. This flag may require tuning in face of a large number of small transactions.
+#sync-index-threshold=10
+
+# Record new transaction allocation stack trace, useful for debugging.  This makes the log include
+# the stack trace of the creator of the Tx when there is an exception when the transaction is submitted 
+# (e.g. for a failed validation).  Defaults to false due to performance impact.
+#transaction-debug-context-enabled=true
+persistent-actor-restart-min-backoff-in-seconds={{.Values.config.odl.datastore.persistentActorRestartMinBackoffInSeconds}}
+persistent-actor-restart-max-backoff-in-seconds={{.Values.config.odl.datastore.persistentActorRestartMaxBackoffInSeconds}}
+persistent-actor-restart-reset-backoff-in-seconds={{.Values.config.odl.datastore.persistentActorRestartResetBackoffInSeconds}}
+shard-transaction-commit-timeout-in-seconds={{.Values.config.odl.datastore.shardTransactionCommitTimeoutInSeconds}}
+shard-isolated-leader-check-interval-in-millis={{.Values.config.odl.datastore.shardIsolatedLeaderCheckIntervalInMillis}}
+operation-timeout-in-seconds={{.Values.config.odl.datastore.operationTimeoutInSeconds}}
diff --git a/kubernetes/sdnc/resources/config/conf/setenv b/kubernetes/sdnc/resources/config/conf/setenv
new file mode 100644 (file)
index 0000000..7476e68
--- /dev/null
@@ -0,0 +1,61 @@
+#!/bin/sh
+#
+#    Licensed to the Apache Software Foundation (ASF) under one or more
+#    contributor license agreements.  See the NOTICE file distributed with
+#    this work for additional information regarding copyright ownership.
+#    The ASF licenses this file to You 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.
+#
+
+#
+# handle specific scripts; the SCRIPT_NAME is exactly the name of the Karaf
+# script: client, instance, shell, start, status, stop, karaf
+#
+# if [ "${KARAF_SCRIPT}" == "SCRIPT_NAME" ]; then
+#   Actions go here...
+# fi
+
+#
+# general settings which should be applied for all scripts go here; please keep
+# in mind that it is possible that scripts might be executed more than once, e.g.
+# in example of the start script where the start script is executed first and the
+# karaf script afterwards.
+#
+
+#
+# The following section shows the possible configuration options for the default 
+# karaf scripts
+#
+# export JAVA_HOME # Location of Java installation
+# export JAVA_MIN_MEM # Minimum memory for the JVM
+# export JAVA_MAX_MEM # Maximum memory for the JVM
+# export JAVA_PERM_MEM # Minimum perm memory for the JVM
+# export JAVA_MAX_PERM_MEM # Maximum perm memory for the JVM
+# export EXTRA_JAVA_OPTS # Additional JVM options
+# export KARAF_HOME # Karaf home folder
+# export KARAF_DATA # Karaf data folder
+# export KARAF_BASE # Karaf base folder
+# export KARAF_ETC  # Karaf etc  folder
+# export KARAF_SYSTEM_OPTS # First citizen Karaf options
+# export KARAF_OPTS # Additional available Karaf options
+# export KARAF_DEBUG # Enable debug mode
+# export KARAF_REDIRECT # Enable/set the std/err redirection when using bin/start
+# export KARAF_NOROOT # Prevent execution as root if set to true
+if [ "x$JAVA_MAX_MEM" = "x" ]; then
+    export JAVA_MAX_MEM="2048m"
+fi
+
+EXTRA_JAVA_OPTS: "-XX:+UseG1GC -XX:MaxGCPauseMillis={{.Values.config.odl.javaOptions.maxGCPauseMillis}} \
+ -XX:ParallelGCThreads={{.Values.config.odl.javaOptions.parallelGCThreads}} -XX:+ParallelRefProcEnabled \
+ -XX:+UseStringDeduplication -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails \
+ -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation \
+ -XX:NumberOfGCLogFiles={{.Values.config.odl.javaOptions.numberGGLogFiles}} -Xloggc:/var/log/onap/sdnc/gc-%t.log"
diff --git a/kubernetes/sdnc/resources/config/overrides/sdnc-versions.yaml b/kubernetes/sdnc/resources/config/overrides/sdnc-versions.yaml
new file mode 100644 (file)
index 0000000..c664860
--- /dev/null
@@ -0,0 +1,21 @@
+sdnc:
+  image: onap/sdnc-image:1.7.0
+  sdnc-ansible-server:
+    image: onap/sdnc-ansible-server-image:1.7.0
+  dmaap-listener:
+    image: onap/sdnc-dmaap-listener-image:1.7.0
+  sdnc-portal:
+    image: onap/admportal-sdnc-image:1.7.0
+  ueb-listener:
+    image: onap/sdnc-ueb-listener-image:1.7.0
+cds:
+  cds-command-executor:
+    image: onap/ccsdk-commandexecutor:0.6.0
+  cds-blueprints-processor:
+    image: onap/ccsdk-blueprintsprocessor:0.6.0
+  cds-ui:
+    image: onap/ccsdk-cds-ui-server:0.6.0
+  cds-controller-blueprints:
+    image: onap/ccsdk-controllerblueprints:0.6.0
+  cds-sdc-listener:
+    image: onap/ccsdk-sdclistener:0.6.0
index 4344db0..f0363e8 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP SDNC Policy Driven Ownership Management
 name: sdnc-prom
-version: 4.0.0
+version: 5.0.0
index 509eadd..a12911b 100644 (file)
@@ -14,5 +14,5 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
diff --git a/kubernetes/sdnc/templates/job.yaml b/kubernetes/sdnc/templates/job.yaml
new file mode 100755 (executable)
index 0000000..6b5a7bf
--- /dev/null
@@ -0,0 +1,129 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# 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" . }}-dbinit-job
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    "helm.sh/hook": post-install
+    "helm.sh/hook-weight": "0"
+    "helm.sh/hook-delete-policy": before-hook-creation
+spec:
+  backoffLimit: 20
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}-job
+        release: {{ .Release.Name }}
+      name: {{ include "common.name" . }}
+    spec:
+      initContainers:
+      - name: {{ include "common.name" . }}-readiness
+        command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - {{ .Values.config.mariadbGalera.chartName }}
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+      containers:
+      - name: {{ include "common.name" . }}
+        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        env:
+          - name: MYSQL_PASSWORD
+            valueFrom:
+              secretKeyRef:
+                name: {{ template "common.fullname" . }}
+                key: db-root-password
+          - name: ODL_ADMIN_PASSWORD
+            valueFrom:
+              secretKeyRef:
+                name: {{ template "common.fullname" . }}-odl
+                key: odl-password
+          - name: SDNC_DB_PASSWORD
+            valueFrom:
+              secretKeyRef:
+                name: {{ template "common.fullname" . }}-sdnctl
+                key: db-sdnctl-password
+          - name: MYSQL_HOST
+            value: "{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}"
+          - name: SDNC_HOME
+            value: "{{.Values.config.sdncHome}}"
+          - name: ETC_DIR
+            value: "{{.Values.config.etcDir}}"
+          - name: BIN_DIR
+            value: "{{.Values.config.binDir}}"
+          - name: SDNC_DB_USER
+            value: "{{.Values.config.dbSdnctlUser}}"
+          - name: SDNC_DB_DATABASE
+            value: "{{.Values.config.dbSdnctlDatabase}}"
+        volumeMounts:
+          - mountPath: {{ .Values.config.binDir }}/installSdncDb.sh
+            name: bin
+            subPath: installSdncDb.sh
+          - mountPath: {{ .Values.config.configDir }}/svclogic.properties
+            name: properties
+            subPath: svclogic.properties
+          - mountPath: /opt/onap/sdnc/svclogic/config/svclogic.properties
+            name: properties
+            subPath: svclogic.properties
+          - mountPath: {{ .Values.config.configDir }}/dblib.properties
+            name: properties
+            subPath: dblib.properties
+        command:
+          - /bin/bash
+        args:
+          - {{.Values.config.binDir }}/installSdncDb.sh
+        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: docker-entrypoint-initdb-d
+        emptyDir: {}
+      - name: bin
+        configMap:
+          name: {{ include "common.fullname" . }}-bin
+          defaultMode: 0755
+      - name: properties
+        configMap:
+          name: {{ include "common.fullname" . }}-properties
+          defaultMode: 0644
+      restartPolicy: Never
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
+
index e74202c..db6d73a 100644 (file)
@@ -40,11 +40,9 @@ spec:
     {{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 }}-8282"
     - port: {{ .Values.service.externalPort2 }}
       targetPort: {{ .Values.service.internalPort2 }}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
       name: "{{ .Values.service.portName }}-8202"
     - port: {{ .Values.service.externalPort3 }}
       targetPort: {{ .Values.service.internalPort3 }}
index d60319f..e3ac50f 100644 (file)
@@ -145,6 +145,15 @@ spec:
             name: logs
           - mountPath: {{ .Values.certpersistence.certPath }}
             name: {{ include "common.fullname" . }}-certs
+          - mountPath: {{ .Values.config.odl.salConfigDir }}/{{ .Values.config.odl.salConfigVersion}}/sal-clustering-config-{{ .Values.config.odl.salConfigVersion}}-akkaconf.xml
+            name: properties
+            subPath: akka.conf
+          - mountPath: {{ .Values.config.odl.etcDir }}/org.opendaylight.controller.cluster.datastore.cfg
+            name: properties
+            subPath: org.opendaylight.controller.cluster.datastore.cfg
+          - mountPath: {{ .Values.config.odl.binDir }}/setenv
+            name: properties
+            subPath: setenv
           resources:
 {{ include "common.resources" . | indent 12 }}
         {{- if .Values.nodeSelector }}
index 9bd50a1..2df38b7 100644 (file)
@@ -32,7 +32,8 @@ global:
 # application images
 repository: nexus3.onap.org:10001
 pullPolicy: Always
-image: onap/sdnc-image:1.5.4
+image: onap/sdnc-image:1.7.0
+
 
 # flag to enable debugging - application support required
 debugEnabled: false
@@ -43,9 +44,13 @@ config:
   odlGid: 101
   odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
   dbRootPassword: secretpassword
+  dbSdnctlUser: sdnctl
+  dbSdnctlDatabase: sdnctl
   dbSdnctlPassword: gamma
   enableClustering: true
+  sdncHome: /opt/onap/sdnc
   binDir: /opt/onap/sdnc/bin
+  etcDir: /opt/onap/sdnc/data
   geoEnabled: false
 # if geoEnabled is set to true here, mysql.geoEnabled must be set to true
 # if geoEnabled is set to true the following 3 values must be set to their proper values
@@ -61,6 +66,32 @@ config:
   ansiblePort: 8000
   javaHome: /usr/lib/jvm/java-1.8-openjdk
 
+  odl:
+    etcDir: /opt/opendaylight/etc
+    binDir: /opt/opendaylight/bin
+    salConfigDir: /opt/opendaylight/system/org/opendaylight/controller/sal-clustering-config
+    salConfigVersion: 1.8.2
+    akka:
+      seedNodeTimeout: 15s
+      circuitBreaker:
+        maxFailures: 10
+        callTimeout: 90s
+        resetTimeout: 30s
+      recoveryEventTimeout: 90s
+    datastore:
+      persistentActorRestartMinBackoffInSeconds: 10
+      persistentActorRestartMaxBackoffInSeconds: 40
+      persistentActorRestartResetBackoffInSeconds: 20
+      shardTransactionCommitTimeoutInSeconds: 120
+      shardIsolatedLeaderCheckIntervalInMillis: 30000
+      operationTimeoutInSeconds: 120
+    javaOptions:
+      maxGCPauseMillis: 100
+      parallelGCThreads : 3
+      numberGGLogFiles: 10
+
+
+
   #local Mariadb-galera cluster
   localDBCluster: false
 
@@ -158,7 +189,7 @@ service:
   internalPort: 8181
   internalPort2: 8101
   internalPort3: 8080
-  internalPort4: 2550
+  internalPort4: 8443
 
   #port
   externalPort: 8282
index 1f88ff5..bc278bd 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Mock Sniro Emulator
 name: sniro-emulator
-version: 4.0.0
+version: 5.0.0
index 9996777..6a748be 100644 (file)
@@ -14,7 +14,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 2c96502..7289a69 100755 (executable)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP Service Orchestrator
 name: so
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index cbf3b83..4e4d565 100755 (executable)
@@ -15,4 +15,4 @@ apiVersion: v1
 appVersion: "1.0"
 description: A Helm chart for Kubernetes
 name: so-bpmn-infra
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1594c5f..d1f23e9 100755 (executable)
@@ -48,6 +48,9 @@ bpelURL: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081
 msb-ip: msb-iag.{{ include "common.namespace" . }}
 msb-port: 80
 mso:
+  rainyDay:
+    retryDurationMultiplier: 2
+    maxRetries: 5
   msoKey: 07a7159d3bf51a0e53be7a8f89699be7
   correlation:
     timeout: 60
@@ -320,6 +323,14 @@ server:
   tomcat:
     max-threads: 50
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/camundabpmn
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: bpmn-pool
+      registerMbeans: true
   security:
     usercredentials:
     -
index d97a629..beda240 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/bpmn-infra:1.4.4
+image: onap/so/bpmn-infra:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 14d42be..a06c8f9 100755 (executable)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: A Helm chart for so-catalog-db-adapter
 name: so-catalog-db-adapter
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index c59949c..b643c4a 100755 (executable)
@@ -26,6 +26,14 @@ mso:
   db:
     auth: Basic YnBlbDpwYXNzd29yZDEk
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: true
   security:
     usercredentials:
     -
index 614986b..ecfeec2 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/catalog-db-adapter:1.4.4
+image: onap/so/catalog-db-adapter:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 9dccc64..4af691a 100755 (executable)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: A Helm chart for DB secrets
 name: so-db-secrets
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 5e14c56..b22a465 100755 (executable)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: MariaDB Service
 name: so-mariadb
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 0ace01d..496eacb 100644 (file)
@@ -19,4 +19,4 @@
 apiVersion: v1
 description: A Helm chart for ONAP Service Orchestration Monitoring
 name: so-monitoring
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index c2e6ad0..dd649c1 100644 (file)
@@ -15,3 +15,11 @@ mso:
       api:
         url: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083/infraActiveRequests/
         auth: Basic YnBlbDpwYXNzd29yZDEk
+
+spring:
+  security:
+    usercredentials:
+    -
+      username: gui
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: GUI-Client
index ade7116..494c38c 100644 (file)
@@ -32,7 +32,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/so-monitoring:1.4.4
+image: onap/so/so-monitoring:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
@@ -85,4 +85,3 @@ ingress:
 nodeSelector: {}
 tolerations: []
 affinity: {}
-
index 9e9d180..b4a955b 100755 (executable)
@@ -15,4 +15,4 @@ apiVersion: v1
 appVersion: "1.0"
 description: A Helm chart for Kubernetes
 name: so-openstack-adapter
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 62351b8..4bf20a6 100755 (executable)
@@ -17,6 +17,14 @@ aai:
 server:
   port: {{ index .Values.containerPort }}
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: false
   security:
     usercredentials:
     -
index 02379cd..965a306 100755 (executable)
@@ -26,7 +26,7 @@ global:
 #################################################################
 # Application configuration defaults.
 #################################################################
-image: onap/so/openstack-adapter:1.4.4
+image: onap/so/openstack-adapter:1.5.0
 pullPolicy: Always
 repository: nexus3.onap.org:10001
 
index 0d547b1..74d9894 100755 (executable)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: A Helm chart for request-db-adapter
 name: so-request-db-adapter
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 7a326d3..6d746ed 100755 (executable)
@@ -25,6 +25,14 @@ mso:
       auth: Basic YnBlbDpwYXNzd29yZDEk
       endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: reqdb-pool
+      registerMbeans: true
   security:
     usercredentials:
     -
index a6d29f5..5c0329e 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/request-db-adapter:1.4.4
+image: onap/so/request-db-adapter:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 5d4b5cc..23b95f5 100755 (executable)
@@ -15,4 +15,4 @@ apiVersion: v1
 appVersion: "1.0"
 description: A Helm chart for Kubernetes
 name: so-sdc-controller
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index f74ef8f..44544f4 100755 (executable)
@@ -16,6 +16,14 @@ aai:
 server:
   port: {{ index .Values.containerPort }}
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: false
   security:
     usercredentials:
     -
@@ -28,10 +36,13 @@ spring:
       role: ACTUATOR
 request:
   datasource:
-    jdbc-url: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
-    username: ${DB_USERNAME}
-    password: ${DB_PASSWORD}
-    driver-class-name: org.mariadb.jdbc.Driver
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: reqdb-pool
+      registerMbeans: false
 mso:
   msoKey: 07a7159d3bf51a0e53be7a8f89699be7
   logPath: ./logs/sdc
index 90b5e77..2354edf 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/sdc-controller:1.4.4
+image: onap/so/sdc-controller:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 747e2ad..04ee1df 100755 (executable)
@@ -15,4 +15,4 @@ apiVersion: v1
 appVersion: "1.0"
 description: A Helm chart for Kubernetes
 name: so-sdnc-adapter
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 32ab607..0969452 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/sdnc-adapter:1.4.4
+image: onap/so/sdnc-adapter:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index a218b11..6eb1ddf 100755 (executable)
@@ -15,4 +15,4 @@ apiVersion: v1
 appVersion: "1.0"
 description: A Helm chart for Kubernetes
 name: so-vfc-adapter
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 72a2f61..dee73ab 100755 (executable)
@@ -15,10 +15,13 @@ logging:
   path: logs
 spring:
   datasource:
-     driver-class-name: org.mariadb.jdbc.Driver
-     url: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
-     username: ${DB_USERNAME}
-     password: ${DB_PASSWORD}
+    hikari:
+       driver-class-name: org.mariadb.jdbc.Driver
+       jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+       username: ${DB_USERNAME}
+       password: ${DB_PASSWORD}
+       pool-name: reqdb-pool
+       registerMbeans: true
   security:
     usercredentials:
     - username: bpel
index 6265b83..e69ceec 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/vfc-adapter:1.4.4
+image: onap/so/vfc-adapter:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 80eda87..3d99120 100755 (executable)
@@ -14,4 +14,4 @@
 apiVersion: v1
 description: ONAP SO VNFM Adapter
 name: so-vnfm-adapter
-version: 4.0.0
+version: 5.0.0
index b3bd8f5..a7051c5 100755 (executable)
@@ -26,7 +26,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/vnfm-adapter:1.4.4
+image: onap/so/vnfm-adapter:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 237486d..7ef398f 100755 (executable)
 # limitations under the License.
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
     repository: '@local'
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
     condition: global.mariadbGalera.localCluster
index 143a594..1aeb50d 100755 (executable)
@@ -60,7 +60,23 @@ mso:
         auth: 51EA5414022D7BE536E7516C4D1A6361416921849B72C0D6FC1C7F262FD9F2BBC2AD124190A332D9845A188AD80955567A4F975C84C221EEA8243BFD92FFE6896CDD1EA16ADD34E1E3D47D4A
       publisher:
         topic: com.att.ecomp.mso.operationalEnvironmentEvent
+  health:
+    auth: Basic bXNvX2FkbWlufHBhc3N3b3JkMSQ=
+    endpoints:
+      - subsystem: apih
+        uri: http://so-bpmn-infra:8081
+      - subsystem: catalogdb
+        uri: http://so-catalog-db-adapter:8082
+
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: true
   jersey:
     type: filter
   security:
@@ -91,10 +107,13 @@ spring:
       role: ACTUATOR
 request:
   datasource:
-    jdbc-url: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
-    username: ${DB_USERNAME}
-    password: ${DB_PASSWORD}
-    driver-class-name: org.mariadb.jdbc.Driver
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: reqdb-pool
+      registerMbeans: true
 org:
   onap:
     so:
index f94ddc8..862f7a6 100755 (executable)
@@ -25,7 +25,7 @@ global:
     serviceName: mariadb-galera
     servicePort: "3306"
     mariadbRootPassword: secretpassword
-    #This flag allows SO to instantiate its own mariadb-galera cluster, 
+    #This flag allows SO to instantiate its own mariadb-galera cluster,
     #serviceName and nameOverride should be so-mariadb-galera if this flag is enabled
     localCluster: false
   persistence:
@@ -38,12 +38,12 @@ global:
     dbPort: 3306
     dbUser: root
     dbPassword: secretpassword
-    
+
 #################################################################
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/api-handler-infra:1.4.4
+image: onap/so/api-handler-infra:1.5.0
 pullPolicy: Always
 
 replicaCount: 1
index 0327cd8..0a49229 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP uui
 name: uui
-version: 4.0.0
+version: 5.0.0
index b665476..360323f 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP uui server
 name: uui-server
-version: 4.0.0
+version: 5.0.0
index 3ee610f..537ede6 100644 (file)
@@ -14,7 +14,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
index 03c5b95..bed76cb 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Virtual Function Controller (VF-C)
 name: vfc
-version: 4.0.0
+version: 5.0.0
index f04a7fa..2b52834 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Catalog
 name: vfc-catalog
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 214d3bb..ef4d9a5 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - EMS Driver
 name: vfc-ems-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 96d008c..b09e73a 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Generic VNFM Driver
 name: vfc-generic-vnfm-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 61aaf32..d40ad58 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Huawei VNFM Driver
 name: vfc-huawei-vnfm-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index d3234ee..c92c9e1 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Juju VNFM Driver
 name: vfc-juju-vnfm-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 94de876..fffb9f6 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - MultiVIM Proxy
 name: vfc-multivim-proxy
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 25414c4..3178a5f 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Nokia V2VNFM Driver
 name: vfc-nokia-v2vnfm-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index d417e87..3e1ca38 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - NS Life Cycle Management
 name: vfc-nslcm
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 90ffba9..6955e70 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - DB
 name: vfc-redis
-version: 4.0.0
+version: 5.0.0
index c883cac..13ec6f8 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Resource Manager
 name: vfc-resmgr
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 67c2164..541c759 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - VNF Life Cycle Management
 name: vfc-vnflcm
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 362715f..6460a2f 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - VNF Manager
 name: vfc-vnfmgr
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 1251506..8fab2ce 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - VNF Resource Manager
 name: vfc-vnfres
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 591a995..9705919 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Workflow Engine
 name: vfc-workflow-engine
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index ccf00f8..78a7c46 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - Workflow
 name: vfc-workflow
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 36eb8dc..3b55435 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - ZTE SDNC Driver
 name: vfc-zte-sdnc-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 4ac2046..e3ffd72 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VFC - ZTE VNFM Driver
 name: vfc-zte-vnfm-driver
-version: 4.0.0
\ No newline at end of file
+version: 5.0.0
\ No newline at end of file
index 71bfc00..c2c445c 100644 (file)
@@ -14,8 +14,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: mariadb-galera
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index deb0fc6..e4aa089 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP Virtual Infrastructure Deployment
 name: vid
-version: 4.0.0
+version: 5.0.0
index dd00351..0419147 100644 (file)
@@ -15,7 +15,7 @@
 apiVersion: v1
 description: ONAP VID MariaDB Galera cluster
 name: vid_mariadb_galera
-version: 4.0.0
+version: 5.0.0
 keywords:
   - mariadb
   - mysql
index d5ed703..e0da745 100644 (file)
@@ -27,7 +27,7 @@ global:
 
 #repository: mysql
 repository: nexus3.onap.org:10001
-image: adfinissygroup/k8s-mariadb-galera-centos:v002
+image: adfinissygroup/k8s-mariadb-galera-centos:v004
 imageInit: busybox
 pullPolicy: IfNotPresent
 
@@ -43,8 +43,7 @@ config:
 
 
 # default number of instances in the StatefulSet
-# keep in mind that if the number is increased you need to update vid-galera-config-job.yaml so that the job will know to wait for all pods.
-replicaCount: 1
+replicaCount: 2
 
 nodeSelector: {}
 
index 9996777..6a748be 100644 (file)
@@ -14,7 +14,7 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     # local reference to common chart, as it is
     # a part of this chart's package and will not
     # be published independently to a repo (at this point)
diff --git a/kubernetes/vid/resources/certs/org.onap.vid.jks b/kubernetes/vid/resources/certs/org.onap.vid.jks
new file mode 100644 (file)
index 0000000..3c2ce91
Binary files /dev/null and b/kubernetes/vid/resources/certs/org.onap.vid.jks differ
diff --git a/kubernetes/vid/resources/certs/org.onap.vid.trust.jks b/kubernetes/vid/resources/certs/org.onap.vid.trust.jks
new file mode 100644 (file)
index 0000000..4caf7be
Binary files /dev/null and b/kubernetes/vid/resources/certs/org.onap.vid.trust.jks differ
index 8bce2cf..a4e821e 100644 (file)
@@ -109,6 +109,8 @@ spec:
             - name: VID_MYSQL_MAXCONNECTIONS
               value: "{{ .Values.config.vidmysqlmaxconnections }}"
           volumeMounts:
+          - mountPath: /opt/app/vid/etc
+            name: vid-certs
           - mountPath: /etc/localtime
             name: localtime
             readOnly: true
@@ -140,6 +142,9 @@ spec:
           - mountPath: /usr/share/filebeat/data
             name: vid-data-filebeat
       volumes:
+        - name: vid-certs
+          secret:
+            secretName: {{ include "common.fullname" . }}-certs
         - name: localtime
           hostPath:
             path: /etc/localtime
index 729e0b1..222a3d5 100644 (file)
@@ -25,3 +25,17 @@ metadata:
 type: Opaque
 data:
   vid-password: {{ .Values.config.vidmysqlpassword | b64enc | quote }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-certs
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/certs/*").AsSecrets . | indent 2 }}
index 36b35e4..1e465c9 100644 (file)
@@ -29,17 +29,32 @@ spec:
     - 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.portName2 }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
       name: {{ .Values.service.portName }}
-    - port: {{ .Values.service.externalPort2 }}
-      targetPort: {{ .Values.service.internalPort2 }}
-      name: {{ .Values.service.portName2 }}
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
     release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}-http
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  type: ClusterIP
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
+  ports:
+    - name: {{ .Values.service.portName }}-http
+      port: {{ .Values.service.externalHttpPort }}
+      targetPort: {{ .Values.service.internalHttpPort }}
+      protocol: TCP
index 0825c76..6d365a4 100644 (file)
@@ -27,7 +27,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/vid:4.3.1
+image: onap/vid:5.0.1
 pullPolicy: Always
 
 # mariadb image for initializing
@@ -86,10 +86,8 @@ service:
   externalPort: 8443
   internalPort: 8443
   nodePort: "00"
-  portName2: vid-http
-  externalPort2: 8080
-  internalPort2: 8080
-  nodePort2: "38"
+  externalHttpPort: 8080
+  internalHttpPort: 8080
 
 ingress:
   enabled: false
index f8c4933..2a6b5c8 100644 (file)
@@ -15,4 +15,4 @@
 apiVersion: v1
 description: ONAP VNF SDK
 name: vnfsdk
-version: 4.0.0
+version: 5.0.0
index fc43cb2..7b1f490 100644 (file)
@@ -14,8 +14,8 @@
 
 dependencies:
   - name: common
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
   - name: postgres
-    version: ~4.x-0
+    version: ~5.x-0
     repository: '@local'
index f6208cf..c683d4c 100644 (file)
@@ -27,7 +27,7 @@ spec:
   ports:
     {{if eq .Values.service.type "NodePort" -}}
     - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}