Merge "Vid Template alignment."
authorMandeep Khinda <Mandeep.Khinda@amdocs.com>
Tue, 18 Sep 2018 15:02:03 +0000 (15:02 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 18 Sep 2018 15:02:03 +0000 (15:02 +0000)
1003 files changed:
.gitignore
TOSCA/Helm/onap-blueprint.yaml [deleted file]
TOSCA/ONAP_TOSCA/onap_tosca.yaml [new file with mode: 0644]
TOSCA/bootstrap.sh [new file with mode: 0644]
TOSCA/cloudify-environment-setup/imports/manager-configuration.yaml [new file with mode: 0644]
TOSCA/cloudify-environment-setup/inputs/openstack.yaml [moved from TOSCA/Helm/helmdelete.sh with 71% similarity]
TOSCA/cloudify-environment-setup/openstack.yaml [new file with mode: 0644]
TOSCA/cloudify-environment-setup/scripts/manager/tasks.py [new file with mode: 0644]
docs/oom_user_guide.rst
kubernetes/aaf/.helmignore
kubernetes/aaf/Chart.yaml
kubernetes/aaf/charts/aaf-cm/.helmignore
kubernetes/aaf/charts/aaf-cm/Chart.yaml
kubernetes/aaf/charts/aaf-cs/.helmignore
kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.pkcs11 [new file with mode: 0644]
kubernetes/aai/.helmignore
kubernetes/aai/Chart.yaml
kubernetes/aai/charts/aai-babel/.helmignore
kubernetes/aai/charts/aai-babel/Chart.yaml
kubernetes/aai/charts/aai-babel/requirements.yaml
kubernetes/aai/charts/aai-babel/resources/config/artifact-generator.properties
kubernetes/aai/charts/aai-babel/resources/config/auth/auth_policy.json
kubernetes/aai/charts/aai-babel/resources/config/babel-auth.properties
kubernetes/aai/charts/aai-babel/resources/config/filter-types.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-babel/resources/config/logback.xml
kubernetes/aai/charts/aai-babel/templates/configmap.yaml
kubernetes/aai/charts/aai-babel/templates/deployment.yaml
kubernetes/aai/charts/aai-babel/templates/secrets.yaml
kubernetes/aai/charts/aai-babel/templates/service.yaml
kubernetes/aai/charts/aai-babel/values.yaml
kubernetes/aai/charts/aai-cassandra/.helmignore
kubernetes/aai/charts/aai-cassandra/Chart.yaml
kubernetes/aai/charts/aai-cassandra/templates/service.yaml
kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml
kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml
kubernetes/aai/charts/aai-cassandra/values.yaml
kubernetes/aai/charts/aai-champ/Chart.yaml
kubernetes/aai/charts/aai-champ/requirements.yaml
kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json
kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties
kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
kubernetes/aai/charts/aai-champ/resources/config/log/logback.xml [new file with mode: 0644]
kubernetes/aai/charts/aai-champ/templates/configmap.yaml
kubernetes/aai/charts/aai-champ/templates/deployment.yaml
kubernetes/aai/charts/aai-champ/templates/secrets.yaml
kubernetes/aai/charts/aai-champ/templates/service.yaml
kubernetes/aai/charts/aai-champ/values.yaml
kubernetes/aai/charts/aai-data-router/.helmignore
kubernetes/aai/charts/aai-data-router/Chart.yaml
kubernetes/aai/charts/aai-data-router/resources/config/auth/data-router_policy.json
kubernetes/aai/charts/aai-data-router/resources/config/schemaIngest.properties
kubernetes/aai/charts/aai-data-router/resources/dynamic/conf/entity-event-policy.xml
kubernetes/aai/charts/aai-data-router/resources/dynamic/routes/entity-event.route
kubernetes/aai/charts/aai-data-router/templates/configmap.yaml
kubernetes/aai/charts/aai-data-router/templates/deployment.yaml
kubernetes/aai/charts/aai-data-router/templates/secret.yaml
kubernetes/aai/charts/aai-data-router/values.yaml
kubernetes/aai/charts/aai-elasticsearch/.helmignore
kubernetes/aai/charts/aai-elasticsearch/Chart.yaml
kubernetes/aai/charts/aai-elasticsearch/resources/config/elasticsearch.yml
kubernetes/aai/charts/aai-elasticsearch/templates/configmap.yaml
kubernetes/aai/charts/aai-elasticsearch/templates/deployment.yaml
kubernetes/aai/charts/aai-elasticsearch/templates/service.yaml
kubernetes/aai/charts/aai-elasticsearch/values.yaml
kubernetes/aai/charts/aai-gizmo/.helmignore
kubernetes/aai/charts/aai-gizmo/Chart.yaml
kubernetes/aai/charts/aai-gizmo/resources/config/README.txt
kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json
kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties
kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml
kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml
kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v10.json [new file with mode: 0644]
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v7.json [new file with mode: 0644]
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v8.json [new file with mode: 0644]
kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v9.json [new file with mode: 0644]
kubernetes/aai/charts/aai-gizmo/resources/config/schemaIngest.properties
kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt
kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml
kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml
kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml
kubernetes/aai/charts/aai-gizmo/templates/service.yaml
kubernetes/aai/charts/aai-gizmo/values.yaml
kubernetes/aai/charts/aai-graphadmin/.helmignore [moved from kubernetes/aai/charts/aai-hbase/.helmignore with 100% similarity]
kubernetes/aai/charts/aai-graphadmin/Chart.yaml [moved from TOSCA/Helm/k8s_delete_env.sh with 59% similarity]
kubernetes/aai/charts/aai-graphadmin/resources/config/aaiconfig.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/resources/config/application.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/resources/config/localhost-access-logback.xml [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/resources/config/logback.xml [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/resources/config/realm.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/templates/job.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/templates/service.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-graphadmin/values.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-hbase/Chart.yaml [deleted file]
kubernetes/aai/charts/aai-hbase/templates/deployment.yaml [deleted file]
kubernetes/aai/charts/aai-hbase/templates/service.yaml [deleted file]
kubernetes/aai/charts/aai-modelloader/.helmignore
kubernetes/aai/charts/aai-modelloader/Chart.yaml
kubernetes/aai/charts/aai-modelloader/resources/config/log/logback.xml
kubernetes/aai/charts/aai-modelloader/resources/config/model-loader.properties
kubernetes/aai/charts/aai-modelloader/templates/configmap.yaml
kubernetes/aai/charts/aai-modelloader/templates/deployment.yaml
kubernetes/aai/charts/aai-modelloader/templates/secret.yaml
kubernetes/aai/charts/aai-modelloader/templates/service.yaml
kubernetes/aai/charts/aai-modelloader/values.yaml
kubernetes/aai/charts/aai-resources/.helmignore
kubernetes/aai/charts/aai-resources/Chart.yaml
kubernetes/aai/charts/aai-resources/resources/config/aaf/cadi.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.keyfile [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.p12 [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.props [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaf/org.osaaf.location.props [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaf/permissions.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaf/truststoreONAPall.jks [new file with mode: 0644]
kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties
kubernetes/aai/charts/aai-resources/resources/config/application.properties
kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties
kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties
kubernetes/aai/charts/aai-resources/resources/config/localhost-access-logback.xml
kubernetes/aai/charts/aai-resources/resources/config/logback.xml
kubernetes/aai/charts/aai-resources/resources/config/realm.properties
kubernetes/aai/charts/aai-resources/templates/configmap.yaml
kubernetes/aai/charts/aai-resources/templates/deployment.yaml
kubernetes/aai/charts/aai-resources/templates/service.yaml
kubernetes/aai/charts/aai-resources/values.yaml
kubernetes/aai/charts/aai-search-data/.helmignore
kubernetes/aai/charts/aai-search-data/Chart.yaml
kubernetes/aai/charts/aai-search-data/resources/config/analysis-config.json
kubernetes/aai/charts/aai-search-data/resources/config/auth/search_policy.json
kubernetes/aai/charts/aai-search-data/resources/config/elastic-search.properties
kubernetes/aai/charts/aai-search-data/resources/config/es-payload-translation.json
kubernetes/aai/charts/aai-search-data/resources/config/filter-config.json
kubernetes/aai/charts/aai-search-data/resources/config/log/logback.xml
kubernetes/aai/charts/aai-search-data/templates/configmap.yaml
kubernetes/aai/charts/aai-search-data/templates/deployment.yaml
kubernetes/aai/charts/aai-search-data/templates/secret.yaml
kubernetes/aai/charts/aai-search-data/templates/service.yaml
kubernetes/aai/charts/aai-search-data/values.yaml
kubernetes/aai/charts/aai-sparky-be/.helmignore
kubernetes/aai/charts/aai-sparky-be/Chart.yaml
kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-default.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-override.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-schema-prod.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-sparky-be/resources/config/application-resources.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-sparky-be/resources/config/application-ssl.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-sparky-be/resources/config/application.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-sparky-be/resources/config/auth/csp-cookie-filter.properties
kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-filter-aggregation.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-prepareSchema.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-subscriptionService.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unified-search.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unifiedFilterRequest.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/descriptors/aaiEntityNodeDescriptors.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_filters.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_views.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/filters/subscription_object_inspector_mapping.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/log/logback.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/portal/BOOT-INF/classes/portal.properties
kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal-authentication.properties
kubernetes/aai/charts/aai-sparky-be/resources/config/portal/roles.config
kubernetes/aai/charts/aai-sparky-be/resources/config/roles.config [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestMappings.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestSettings.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/dynamicMappings.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/entityCountHistoryMappings.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_mappings.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_settings.json [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-application.properties [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-http-config.properties [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-ssl-config.properties [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-aggregateVnfSearchProvider.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-apigw.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-gizmo.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-sync.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspect.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspectSearchProvider.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core.xml [deleted file]
kubernetes/aai/charts/aai-sparky-be/templates/configmap.yaml
kubernetes/aai/charts/aai-sparky-be/templates/deployment.yaml
kubernetes/aai/charts/aai-sparky-be/templates/secret.yaml
kubernetes/aai/charts/aai-sparky-be/templates/service.yaml
kubernetes/aai/charts/aai-sparky-be/values.yaml
kubernetes/aai/charts/aai-spike/Chart.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/requirements.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/auth/tomcat_keystore [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/logback.xml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v10.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v11.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v12.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v13.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v14.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v7.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v8.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v9.json [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/schemaIngest.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/spike-beans.xml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/resources/config/spike.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/templates/configmap.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/templates/deployment.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/templates/secrets.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/templates/service.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-spike/values.yaml [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/.helmignore
kubernetes/aai/charts/aai-traversal/Chart.yaml
kubernetes/aai/charts/aai-traversal/resources/config/aaf/cadi.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.keyfile [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.p12 [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.props [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.osaaf.location.props [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaf/permissions.properties [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaf/truststoreONAPall.jks [new file with mode: 0644]
kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties
kubernetes/aai/charts/aai-traversal/resources/config/application.properties
kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties
kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties
kubernetes/aai/charts/aai-traversal/resources/config/localhost-access-logback.xml
kubernetes/aai/charts/aai-traversal/resources/config/logback.xml
kubernetes/aai/charts/aai-traversal/resources/config/realm.properties
kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
kubernetes/aai/charts/aai-traversal/templates/job.yaml
kubernetes/aai/charts/aai-traversal/templates/service.yaml
kubernetes/aai/charts/aai-traversal/values.yaml
kubernetes/aai/requirements.yaml
kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb [deleted file]
kubernetes/aai/resources/config/aai-data/environments/README.md [deleted file]
kubernetes/aai/resources/config/aai-data/environments/simpledemo.json [deleted file]
kubernetes/aai/resources/config/aai-data/environments/solo.json [deleted file]
kubernetes/aai/resources/config/haproxy/haproxy.cfg
kubernetes/aai/resources/config/log/filebeat/filebeat.yml
kubernetes/aai/templates/configmap.yaml
kubernetes/aai/templates/deployment.yaml
kubernetes/aai/templates/service.yaml
kubernetes/aai/values.yaml
kubernetes/appc/Chart.yaml
kubernetes/appc/charts/appc-ansible-server/.helmignore [moved from kubernetes/so/charts/mariadb/.helmignore with 100% similarity]
kubernetes/appc/charts/appc-ansible-server/Chart.yaml [new file with mode: 0644]
kubernetes/appc/charts/appc-ansible-server/requirements.yaml [new file with mode: 0644]
kubernetes/appc/charts/appc-ansible-server/resources/config/RestServer_config [new file with mode: 0644]
kubernetes/appc/charts/appc-ansible-server/templates/configmap.yaml [new file with mode: 0644]
kubernetes/appc/charts/appc-ansible-server/templates/deployment.yaml [new file with mode: 0644]
kubernetes/appc/charts/appc-ansible-server/templates/service.yaml [new file with mode: 0644]
kubernetes/appc/charts/appc-ansible-server/values.yaml [moved from kubernetes/vnfsdk/charts/vnfsdk-postgres/values.yaml with 76% similarity]
kubernetes/appc/charts/appc-cdt/Chart.yaml
kubernetes/appc/charts/appc-cdt/requirements.yaml
kubernetes/appc/charts/appc-cdt/templates/NOTES.txt
kubernetes/appc/charts/appc-cdt/templates/deployment.yaml
kubernetes/appc/charts/appc-cdt/templates/service.yaml
kubernetes/appc/charts/appc-cdt/values.yaml
kubernetes/appc/requirements.yaml
kubernetes/appc/resources/config/appc/opt/onap/appc/bin/health_check.sh
kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installAppcDb.sh
kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaa-app-config.xml
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaiclient.properties
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/appc.properties
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/dblib.properties
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/svclogic.properties
kubernetes/appc/resources/config/appc/opt/onap/appc/svclogic/bin/showActiveGraphs.sh
kubernetes/appc/resources/config/appc/opt/onap/appc/svclogic/config/svclogic.properties
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/installSdncDb.sh
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/aaiclient.properties
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/dblib.properties
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/svclogic.properties
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh
kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/config/svclogic.properties
kubernetes/appc/resources/config/log/filebeat/log4j/filebeat.yml
kubernetes/appc/resources/config/log/org.ops4j.pax.logging.cfg
kubernetes/appc/templates/NOTES.txt
kubernetes/appc/templates/configmap.yaml
kubernetes/appc/templates/pv.yaml
kubernetes/appc/templates/secrets.yaml
kubernetes/appc/templates/service.yaml
kubernetes/appc/templates/statefulset.yaml
kubernetes/appc/values.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/resources/config/elasticsearch.yml
kubernetes/clamp/charts/clamp-dash-es/templates/configmap.yaml
kubernetes/clamp/charts/clamp-dash-es/templates/deployment.yaml
kubernetes/clamp/charts/clamp-dash-es/templates/pv.yaml
kubernetes/clamp/charts/clamp-dash-es/templates/pvc.yaml
kubernetes/clamp/charts/clamp-dash-es/templates/service.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/templates/configmap.yaml
kubernetes/clamp/charts/clamp-dash-kibana/templates/deployment.yaml
kubernetes/clamp/charts/clamp-dash-kibana/templates/service.yaml
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/logstash.yml
kubernetes/clamp/charts/clamp-dash-logstash/resources/config/pipeline.conf
kubernetes/clamp/charts/clamp-dash-logstash/templates/configmap.yaml
kubernetes/clamp/charts/clamp-dash-logstash/templates/deployment.yaml
kubernetes/clamp/charts/clamp-dash-logstash/templates/service.yaml
kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
kubernetes/clamp/charts/mariadb/Chart.yaml
kubernetes/clamp/charts/mariadb/NOTES.txt
kubernetes/clamp/charts/mariadb/resources/config/mariadb/conf.d/conf1/my.cnf
kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/load-sql-files-tests-automation.sh
kubernetes/clamp/charts/mariadb/templates/NOTES.txt
kubernetes/clamp/charts/mariadb/templates/configmap.yaml
kubernetes/clamp/charts/mariadb/templates/deployment.yaml
kubernetes/clamp/charts/mariadb/templates/pv.yaml
kubernetes/clamp/charts/mariadb/templates/pvc.yaml
kubernetes/clamp/charts/mariadb/templates/secrets.yaml
kubernetes/clamp/charts/mariadb/templates/service.yaml
kubernetes/clamp/charts/mariadb/values.yaml
kubernetes/clamp/requirements.yaml
kubernetes/clamp/resources/config/log/filebeat/filebeat.yml
kubernetes/clamp/resources/config/logback.xml
kubernetes/clamp/templates/NOTES.txt
kubernetes/clamp/templates/configmap.yaml
kubernetes/clamp/templates/deployment.yaml
kubernetes/clamp/templates/service.yaml
kubernetes/clamp/values.yaml
kubernetes/common/dgbuilder/Chart.yaml
kubernetes/common/dgbuilder/requirements.yaml
kubernetes/common/dgbuilder/resources/config/svclogic.properties
kubernetes/common/dgbuilder/resources/scripts/createReleaseDir.sh
kubernetes/common/dgbuilder/templates/NOTES.txt
kubernetes/common/dgbuilder/templates/configmap.yaml
kubernetes/common/dgbuilder/templates/deployment.yaml
kubernetes/common/dgbuilder/templates/secrets.yaml
kubernetes/common/dgbuilder/templates/service.yaml
kubernetes/common/dgbuilder/values.yaml
kubernetes/common/mariadb-galera/Chart.yaml
kubernetes/common/mariadb-galera/requirements.yaml
kubernetes/common/mariadb-galera/templates/NOTES.txt
kubernetes/common/mariadb-galera/templates/configmap.yaml
kubernetes/common/mariadb-galera/templates/pv.yaml
kubernetes/common/mariadb-galera/templates/secrets.yaml
kubernetes/common/mariadb-galera/templates/service.yaml
kubernetes/common/mariadb-galera/templates/statefulset.yaml
kubernetes/common/mariadb-galera/values.yaml
kubernetes/consul/Chart.yaml
kubernetes/consul/charts/consul-server/Chart.yaml
kubernetes/consul/charts/consul-server/requirements.yaml
kubernetes/consul/charts/consul-server/templates/service.yaml
kubernetes/consul/charts/consul-server/templates/statefulset.yaml
kubernetes/consul/charts/consul-server/values.yaml
kubernetes/consul/requirements.yaml
kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json [deleted file]
kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json [deleted file]
kubernetes/consul/resources/config/consul-agent-config/model-loader.properties
kubernetes/consul/resources/config/consul-agent-config/policy-health.json
kubernetes/consul/resources/config/consul-agent-config/scripts/aai-search-storage-write-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/appc-dbhost-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/clamp-mariadb-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/data-router-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/model-loader-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/mr-kafka-health.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/mr-zookeeper-health.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-be-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-cs-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-fe-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-titan-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-cluster-health.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-dbhost-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/search-data-service-availability.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/so-api-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/so-camunda-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/so-jra-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/so-mariadb-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/sparky-be-script.sh
kubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh [deleted file]
kubernetes/consul/resources/config/consul-agent-config/scripts/vid-mariadb-script.sh
kubernetes/consul/templates/configmap.yaml
kubernetes/consul/templates/deployment.yaml
kubernetes/consul/templates/secrets.yaml
kubernetes/consul/values.yaml
kubernetes/contrib/charts/netbox/charts/netbox-app/resources/config/initializers/custom_fields.yml
kubernetes/contrib/charts/netbox/charts/netbox-app/resources/config/initializers/users.yml
kubernetes/contrib/charts/netbox/charts/netbox-app/resources/config/provisioning/provision.sh
kubernetes/contrib/charts/netbox/charts/netbox-app/templates/pv.yaml
kubernetes/contrib/charts/netbox/charts/netbox-app/templates/pvc.yaml
kubernetes/contrib/charts/netbox/charts/netbox-app/values.yaml
kubernetes/contrib/charts/netbox/charts/netbox-nginx/templates/service.yaml
kubernetes/contrib/charts/netbox/charts/netbox-nginx/values.yaml
kubernetes/contrib/charts/netbox/charts/netbox-postgres/templates/pv.yaml
kubernetes/contrib/charts/netbox/charts/netbox-postgres/templates/pvc.yaml
kubernetes/contrib/charts/netbox/charts/netbox-postgres/values.yaml
kubernetes/contrib/charts/netbox/values.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-ves-inputs.yaml
kubernetes/dcaegen2/charts/dcae-bootstrap/templates/deployment.yaml [moved from kubernetes/dcaegen2/charts/dcae-bootstrap/templates/job.yaml with 95% similarity]
kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
kubernetes/dmaap/Makefile
kubernetes/dmaap/README.md
kubernetes/dmaap/charts/dmaap-bus-controller/resources/dcaeLocations/san-francisco.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/dmaap/onap.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/README [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/mr_clusters/san-francisco.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_READY.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_REGISTRATION.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/README [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml
kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml
kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml
kubernetes/dmaap/charts/dmaap-data-router/.helmignore [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/Chart.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/.helmignore [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/Chart.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/resources/config/mariadb/conf.d/mariadb1.cnf [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/resources/config/mariadb/docker-entrypoint-initdb.d/sql_init_01.sql [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/NOTES.txt [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/configmap.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/deployment.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/pv.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/pvc.yaml [moved from kubernetes/so/charts/mariadb/templates/pvc.yaml with 100% similarity]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/secrets.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/service.yaml [moved from kubernetes/vnfsdk/charts/vnfsdk-postgres/templates/deployment.yaml with 53% similarity]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/values.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/.helmignore [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/Chart.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/createFeed.sh [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/node.properties [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/NOTES.txt [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/configmap.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/service.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/values.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/.helmignore [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/Chart.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/resources/config/provserver.properties [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/NOTES.txt [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/configmap.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/service.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/values.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/requirements.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/dmaap-data-router/values.yaml [new file with mode: 0644]
kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/deployment.yaml
kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml
kubernetes/dmaap/charts/message-router/templates/configmap.yaml
kubernetes/dmaap/charts/message-router/values.yaml
kubernetes/esr/Chart.yaml
kubernetes/esr/charts/esr-gui/Chart.yaml
kubernetes/esr/charts/esr-gui/templates/NOTES.txt
kubernetes/esr/charts/esr-gui/templates/deployment.yaml
kubernetes/esr/charts/esr-gui/templates/service.yaml
kubernetes/esr/charts/esr-gui/values.yaml
kubernetes/esr/requirements.yaml
kubernetes/esr/resources/config/log/esrserver/logback.xml
kubernetes/esr/resources/config/log/filebeat/filebeat.yml
kubernetes/esr/templates/NOTES.txt
kubernetes/esr/templates/configmap.yaml
kubernetes/esr/templates/deployment.yaml
kubernetes/esr/templates/service.yaml
kubernetes/esr/values.yaml
kubernetes/helm/plugins/deploy/deploy.sh [new file with mode: 0755]
kubernetes/helm/plugins/deploy/plugin.yaml [new file with mode: 0644]
kubernetes/helm/plugins/undeploy/plugin.yaml [new file with mode: 0644]
kubernetes/helm/plugins/undeploy/undeploy.sh [new file with mode: 0755]
kubernetes/helm/starters/onap-app/README.md
kubernetes/helm/starters/onap-app/resources/config/README.txt
kubernetes/helm/starters/onap-app/resources/config/application.properties
kubernetes/helm/starters/onap-app/templates/NOTES.txt
kubernetes/helm/starters/onap-app/templates/configmap.yaml
kubernetes/log/Chart.yaml
kubernetes/log/charts/log-elasticsearch/Chart.yaml
kubernetes/log/charts/log-elasticsearch/requirements.yaml
kubernetes/log/charts/log-elasticsearch/resources/config/elasticsearch.yml
kubernetes/log/charts/log-elasticsearch/templates/NOTES.txt
kubernetes/log/charts/log-elasticsearch/templates/configmap.yaml
kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml
kubernetes/log/charts/log-elasticsearch/templates/pv.yaml
kubernetes/log/charts/log-elasticsearch/templates/pvc.yaml
kubernetes/log/charts/log-elasticsearch/templates/service.yaml
kubernetes/log/charts/log-elasticsearch/values.yaml
kubernetes/log/charts/log-kibana/Chart.yaml
kubernetes/log/charts/log-kibana/requirements.yaml
kubernetes/log/charts/log-kibana/resources/config/kibana.yml
kubernetes/log/charts/log-kibana/templates/NOTES.txt
kubernetes/log/charts/log-kibana/templates/configmap.yaml
kubernetes/log/charts/log-kibana/templates/deployment.yaml
kubernetes/log/charts/log-kibana/templates/service.yaml
kubernetes/log/charts/log-kibana/values.yaml
kubernetes/log/charts/log-logstash/Chart.yaml
kubernetes/log/charts/log-logstash/requirements.yaml
kubernetes/log/charts/log-logstash/resources/config/logstash.yml
kubernetes/log/charts/log-logstash/resources/config/onap-pipeline.conf
kubernetes/log/charts/log-logstash/templates/NOTES.txt
kubernetes/log/charts/log-logstash/templates/configmap.yaml
kubernetes/log/charts/log-logstash/templates/deployment.yaml
kubernetes/log/charts/log-logstash/templates/service.yaml
kubernetes/log/charts/log-logstash/values.yaml
kubernetes/log/requirements.yaml
kubernetes/log/values.yaml
kubernetes/msb/Chart.yaml
kubernetes/msb/charts/kube2msb/Chart.yaml
kubernetes/msb/charts/kube2msb/requirements.yaml
kubernetes/msb/charts/kube2msb/templates/deployment.yaml
kubernetes/msb/charts/kube2msb/values.yaml
kubernetes/msb/charts/msb-consul/Chart.yaml
kubernetes/msb/charts/msb-consul/requirements.yaml
kubernetes/msb/charts/msb-consul/templates/NOTES.txt
kubernetes/msb/charts/msb-consul/templates/deployment.yaml
kubernetes/msb/charts/msb-consul/templates/service.yaml
kubernetes/msb/charts/msb-consul/values.yaml
kubernetes/msb/charts/msb-discovery/Chart.yaml
kubernetes/msb/charts/msb-discovery/requirements.yaml
kubernetes/msb/charts/msb-discovery/resources/config/logback.xml
kubernetes/msb/charts/msb-discovery/templates/NOTES.txt
kubernetes/msb/charts/msb-discovery/templates/configmap.yaml
kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
kubernetes/msb/charts/msb-discovery/templates/service.yaml
kubernetes/msb/charts/msb-discovery/values.yaml
kubernetes/msb/charts/msb-eag/Chart.yaml
kubernetes/msb/charts/msb-eag/requirements.yaml
kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml [new file with mode: 0644]
kubernetes/msb/charts/msb-eag/resources/config/logback.xml
kubernetes/msb/charts/msb-eag/templates/NOTES.txt
kubernetes/msb/charts/msb-eag/templates/configmap.yaml
kubernetes/msb/charts/msb-eag/templates/deployment.yaml
kubernetes/msb/charts/msb-eag/templates/service.yaml
kubernetes/msb/charts/msb-eag/values.yaml
kubernetes/msb/charts/msb-iag/Chart.yaml
kubernetes/msb/charts/msb-iag/requirements.yaml
kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml [new file with mode: 0644]
kubernetes/msb/charts/msb-iag/resources/config/logback.xml
kubernetes/msb/charts/msb-iag/templates/NOTES.txt
kubernetes/msb/charts/msb-iag/templates/configmap.yaml
kubernetes/msb/charts/msb-iag/templates/deployment.yaml
kubernetes/msb/charts/msb-iag/templates/service.yaml
kubernetes/msb/charts/msb-iag/values.yaml
kubernetes/msb/requirements.yaml
kubernetes/msb/resources/config/log/discovery/logback.xml
kubernetes/msb/resources/config/log/eag/logback.xml
kubernetes/msb/resources/config/log/filebeat/filebeat.yml
kubernetes/msb/resources/config/log/iag/logback.xml
kubernetes/msb/templates/configmap.yaml
kubernetes/msb/values.yaml
kubernetes/multicloud/Chart.yaml
kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml
kubernetes/multicloud/charts/multicloud-ocata/resources/config/log/log.yml
kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml
kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml
kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml
kubernetes/multicloud/charts/multicloud-ocata/values.yaml
kubernetes/multicloud/charts/multicloud-vio/Chart.yaml
kubernetes/multicloud/charts/multicloud-vio/resources/config/log/log.yml
kubernetes/multicloud/charts/multicloud-vio/templates/configmap.yaml
kubernetes/multicloud/charts/multicloud-vio/templates/deployment.yaml
kubernetes/multicloud/charts/multicloud-vio/templates/service.yaml
kubernetes/multicloud/charts/multicloud-vio/values.yaml
kubernetes/multicloud/charts/multicloud-windriver/Chart.yaml
kubernetes/multicloud/charts/multicloud-windriver/resources/config/log/log.yml
kubernetes/multicloud/charts/multicloud-windriver/templates/configmap.yaml
kubernetes/multicloud/charts/multicloud-windriver/templates/deployment.yaml
kubernetes/multicloud/charts/multicloud-windriver/templates/service.yaml
kubernetes/multicloud/charts/multicloud-windriver/values.yaml
kubernetes/multicloud/requirements.yaml
kubernetes/multicloud/resources/config/log/filebeat/filebeat.yml
kubernetes/multicloud/resources/config/log/framework/log.yml
kubernetes/multicloud/templates/configmap.yaml
kubernetes/multicloud/templates/deployment.yaml
kubernetes/multicloud/templates/service.yaml
kubernetes/multicloud/values.yaml
kubernetes/nbi/Chart.yaml
kubernetes/nbi/charts/mariadb/requirements.yaml
kubernetes/nbi/charts/mariadb/templates/NOTES.txt
kubernetes/nbi/charts/mariadb/templates/pv.yaml
kubernetes/nbi/charts/mariadb/templates/pvc.yaml
kubernetes/nbi/charts/mariadb/templates/service.yaml
kubernetes/nbi/requirements.yaml
kubernetes/nbi/templates/deployment.yaml
kubernetes/nbi/values.yaml
kubernetes/onap/requirements.yaml
kubernetes/onap/resources/environments/dev.yaml
kubernetes/onap/values.yaml
kubernetes/oof/Chart.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-api/templates/NOTES.txt
kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/service.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-controller/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-data/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties
kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh
kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt
kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-reservation/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-solver/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt
kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml
kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml
kubernetes/oof/charts/oof-has/requirements.yaml
kubernetes/oof/charts/oof-has/resources/config/conductor.conf
kubernetes/oof/charts/oof-has/resources/config/healthy.sh
kubernetes/oof/charts/oof-has/resources/config/log.conf
kubernetes/oof/charts/oof-has/resources/config/log/filebeat.yml
kubernetes/oof/charts/oof-has/templates/configmap.yaml
kubernetes/oof/charts/oof-has/values.yaml
kubernetes/oof/requirements.yaml
kubernetes/oof/resources/config/osdf_config.yaml
kubernetes/oof/templates/NOTES.txt
kubernetes/oof/templates/configmap.yaml
kubernetes/oof/templates/deployment.yaml
kubernetes/oof/templates/service.yaml
kubernetes/oof/values.yaml
kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf
kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh
kubernetes/policy/charts/pdp/resources/config/pe/pdp.conf
kubernetes/policy/charts/pdp/resources/config/pe/pdplp.conf
kubernetes/policy/charts/policy-common/resources/config/pe/base.conf
kubernetes/policy/charts/policy-common/resources/config/scripts/do-start.sh
kubernetes/policy/resources/config/pe/console.conf
kubernetes/policy/resources/config/pe/pap.conf
kubernetes/policy/resources/config/pe/paplp.conf
kubernetes/policy/resources/config/pe/push-policies.sh
kubernetes/pomba/charts/pomba-aaictxbuilder/resources/config/application.properties
kubernetes/pomba/charts/pomba-aaictxbuilder/values.yaml
kubernetes/pomba/charts/pomba-contextaggregator/resources/config/application.properties
kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/aai.properties
kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/networkdiscovery.properties [new file with mode: 0755]
kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdc.properties
kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/sdnc.properties
kubernetes/pomba/charts/pomba-contextaggregator/values.yaml
kubernetes/pomba/charts/pomba-data-router/.helmignore [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/Chart.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/config/auth/client-cert-onap.p12 [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/config/auth/data-router_policy.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/config/auth/tomcat_keystore [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/config/data-router.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/config/schemaIngest.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/dynamic/conf/audit-bean.xml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/dynamic/conf/poa-validation-bean.xml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/dynamic/routes/audit.route [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/resources/dynamic/routes/poaValidation.route [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/templates/configmap.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/templates/pv.yaml [moved from kubernetes/so/charts/mariadb/templates/pv.yaml with 100% similarity]
kubernetes/pomba/charts/pomba-data-router/templates/pvc.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/templates/secret.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/templates/service.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-data-router/values.yaml [moved from kubernetes/so/charts/mariadb/values.yaml with 76% similarity]
kubernetes/pomba/charts/pomba-elasticsearch/resources/config/elasticsearch.yml
kubernetes/pomba/charts/pomba-kibana/resources/config/default-mapping.json
kubernetes/pomba/charts/pomba-kibana/resources/config/default.json
kubernetes/pomba/charts/pomba-kibana/resources/config/validationsDump.json
kubernetes/pomba/charts/pomba-kibana/resources/config/violationsDump.json
kubernetes/pomba/charts/pomba-networkdiscovery/Chart.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/requirements.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/application.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/auth/enricher-client-cert.p12 [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/log/logback.xml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/templates/configmap.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/templates/deployment.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/templates/secrets.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/templates/service.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscovery/values.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-sdcctxbuilder/values.yaml
kubernetes/pomba/charts/pomba-search-data/.helmignore [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/Chart.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/analysis-config.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/auth/search_policy.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/auth/tomcat_keystore [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/dynamic-custom-template.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/elastic-search.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/filter-config.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/resources/config/log/logback.xml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/templates/configmap.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/templates/deployment.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/templates/secret.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/templates/service.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-search-data/values.yaml [moved from kubernetes/aai/charts/aai-hbase/values.yaml with 57% similarity]
kubernetes/pomba/charts/pomba-servicedecomposition/Chart.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/requirements.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/templates/configmap.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/templates/deployment.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/templates/service.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/Chart.yaml [moved from kubernetes/vnfsdk/charts/vnfsdk-postgres/Chart.yaml with 90% similarity]
kubernetes/pomba/charts/pomba-validation-service/requirements.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/README.txt [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/aai-environment.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/client-cert-onap.p12 [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/tomcat_keystore [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth_policy.json [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/rule-indexing.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/schemaIngest.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/topics/topic-poa-audit-result.properties [moved from TOSCA/Helm/helminstall.sh with 60% similarity]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/topics/topic-poa-rule-validation.properties [moved from TOSCA/Helm/k8s_setup_env.sh with 53% similarity]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/validation-service-auth.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/validation-service.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/application.properties [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/templates/configmap.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/templates/secrets.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/templates/service.yaml [new file with mode: 0644]
kubernetes/pomba/charts/pomba-validation-service/values.yaml [new file with mode: 0644]
kubernetes/pomba/values.yaml
kubernetes/portal/.helmignore
kubernetes/portal/Chart.yaml
kubernetes/portal/charts/portal-app/.helmignore
kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/fusion.properties
kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/logback.xml
kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/music.properties
kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/openid-connect.properties
kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/portal.properties
kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/system.properties
kubernetes/portal/charts/portal-app/templates/NOTES.txt
kubernetes/portal/charts/portal-app/templates/configmap.yaml
kubernetes/portal/charts/portal-app/values.yaml
kubernetes/portal/charts/portal-cassandra/.helmignore
kubernetes/portal/charts/portal-cassandra/Chart.yaml
kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portal.cql
kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portalsdk.cql
kubernetes/portal/charts/portal-cassandra/templates/NOTES.txt
kubernetes/portal/charts/portal-cassandra/templates/configmap.yaml
kubernetes/portal/charts/portal-cassandra/templates/deployment.yaml
kubernetes/portal/charts/portal-cassandra/templates/pv.yaml
kubernetes/portal/charts/portal-cassandra/templates/pvc.yaml
kubernetes/portal/charts/portal-cassandra/templates/service.yaml
kubernetes/portal/charts/portal-cassandra/values.yaml
kubernetes/portal/charts/portal-mariadb/.helmignore
kubernetes/portal/charts/portal-mariadb/Chart.yaml
kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/oom_updates.sql
kubernetes/portal/charts/portal-mariadb/templates/NOTES.txt
kubernetes/portal/charts/portal-mariadb/templates/configmap.yaml
kubernetes/portal/charts/portal-mariadb/templates/deployment.yaml
kubernetes/portal/charts/portal-mariadb/templates/job.yaml
kubernetes/portal/charts/portal-mariadb/templates/pv.yaml
kubernetes/portal/charts/portal-mariadb/templates/pvc.yaml
kubernetes/portal/charts/portal-mariadb/templates/secrets.yaml
kubernetes/portal/charts/portal-mariadb/templates/service.yaml
kubernetes/portal/charts/portal-mariadb/values.yaml
kubernetes/portal/charts/portal-sdk/.helmignore
kubernetes/portal/charts/portal-sdk/Chart.yaml
kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/fusion.properties
kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/logback.xml
kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/music.properties
kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/portal.properties
kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/system.properties
kubernetes/portal/charts/portal-sdk/templates/NOTES.txt
kubernetes/portal/charts/portal-sdk/templates/configmap.yaml
kubernetes/portal/charts/portal-sdk/templates/deployment.yaml
kubernetes/portal/charts/portal-sdk/templates/service.yaml
kubernetes/portal/charts/portal-sdk/values.yaml
kubernetes/portal/charts/portal-widget/.helmignore
kubernetes/portal/charts/portal-widget/Chart.yaml
kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.properties
kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.yml
kubernetes/portal/charts/portal-widget/templates/NOTES.txt
kubernetes/portal/charts/portal-widget/templates/configmap.yaml
kubernetes/portal/charts/portal-widget/templates/deployment.yaml
kubernetes/portal/charts/portal-widget/templates/service.yaml
kubernetes/portal/charts/portal-widget/values.yaml
kubernetes/portal/charts/portal-zookeeper/.helmignore
kubernetes/portal/charts/portal-zookeeper/Chart.yaml
kubernetes/portal/charts/portal-zookeeper/templates/NOTES.txt
kubernetes/portal/charts/portal-zookeeper/templates/deployment.yaml
kubernetes/portal/charts/portal-zookeeper/templates/service.yaml
kubernetes/portal/charts/portal-zookeeper/values.yaml
kubernetes/portal/docker/init/mariadb-client/Dockerfile
kubernetes/portal/docker/init/mariadb-client/db_migrate.sh
kubernetes/portal/requirements.yaml
kubernetes/portal/resources/config/log/filebeat/filebeat.yml
kubernetes/portal/templates/configmap.yaml
kubernetes/portal/values.yaml
kubernetes/robot/demo-k8s.sh
kubernetes/robot/ete-k8s.sh
kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py
kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py
kubernetes/robot/resources/config/eteshare/config/vm_properties.py
kubernetes/robot/templates/NOTES.txt
kubernetes/robot/templates/deployment.yaml
kubernetes/robot/values.yaml [changed mode: 0644->0755]
kubernetes/sdc/.helmignore
kubernetes/sdc/Chart.yaml
kubernetes/sdc/charts/sdc-be/.helmignore
kubernetes/sdc/charts/sdc-be/Chart.yaml
kubernetes/sdc/charts/sdc-be/resources/config/logging/logback.xml
kubernetes/sdc/charts/sdc-be/templates/NOTES.txt
kubernetes/sdc/charts/sdc-be/templates/configmap.yaml
kubernetes/sdc/charts/sdc-be/templates/deployment.yaml
kubernetes/sdc/charts/sdc-be/templates/job.yaml
kubernetes/sdc/charts/sdc-be/templates/service.yaml
kubernetes/sdc/charts/sdc-be/values.yaml
kubernetes/sdc/charts/sdc-cs/.helmignore
kubernetes/sdc/charts/sdc-cs/Chart.yaml
kubernetes/sdc/charts/sdc-cs/templates/NOTES.txt
kubernetes/sdc/charts/sdc-cs/templates/deployment.yaml
kubernetes/sdc/charts/sdc-cs/templates/job.yaml
kubernetes/sdc/charts/sdc-cs/templates/pv.yaml
kubernetes/sdc/charts/sdc-cs/templates/pvc.yaml
kubernetes/sdc/charts/sdc-cs/templates/service.yaml
kubernetes/sdc/charts/sdc-cs/values.yaml
kubernetes/sdc/charts/sdc-es/.helmignore
kubernetes/sdc/charts/sdc-es/Chart.yaml
kubernetes/sdc/charts/sdc-es/templates/NOTES.txt
kubernetes/sdc/charts/sdc-es/templates/deployment.yaml
kubernetes/sdc/charts/sdc-es/templates/job.yaml
kubernetes/sdc/charts/sdc-es/templates/pv.yaml
kubernetes/sdc/charts/sdc-es/templates/pvc.yaml
kubernetes/sdc/charts/sdc-es/templates/service.yaml
kubernetes/sdc/charts/sdc-es/values.yaml
kubernetes/sdc/charts/sdc-fe/.helmignore
kubernetes/sdc/charts/sdc-fe/Chart.yaml
kubernetes/sdc/charts/sdc-fe/resources/config/logging/logback.xml
kubernetes/sdc/charts/sdc-fe/templates/NOTES.txt
kubernetes/sdc/charts/sdc-fe/templates/configmap.yaml
kubernetes/sdc/charts/sdc-fe/templates/deployment.yaml
kubernetes/sdc/charts/sdc-fe/templates/service.yaml
kubernetes/sdc/charts/sdc-fe/values.yaml
kubernetes/sdc/charts/sdc-kb/.helmignore
kubernetes/sdc/charts/sdc-kb/Chart.yaml
kubernetes/sdc/charts/sdc-kb/templates/NOTES.txt
kubernetes/sdc/charts/sdc-kb/templates/deployment.yaml
kubernetes/sdc/charts/sdc-kb/templates/service.yaml
kubernetes/sdc/charts/sdc-kb/values.yaml
kubernetes/sdc/charts/sdc-onboarding-be/.helmignore
kubernetes/sdc/charts/sdc-onboarding-be/Chart.yaml
kubernetes/sdc/charts/sdc-onboarding-be/resources/config/logging/logback.xml
kubernetes/sdc/charts/sdc-onboarding-be/templates/NOTES.txt
kubernetes/sdc/charts/sdc-onboarding-be/templates/configmap.yaml
kubernetes/sdc/charts/sdc-onboarding-be/templates/deployment.yaml
kubernetes/sdc/charts/sdc-onboarding-be/templates/job.yaml
kubernetes/sdc/charts/sdc-onboarding-be/templates/pv.yaml
kubernetes/sdc/charts/sdc-onboarding-be/templates/pvc.yaml
kubernetes/sdc/charts/sdc-onboarding-be/templates/service.yaml
kubernetes/sdc/charts/sdc-onboarding-be/values.yaml
kubernetes/sdc/charts/sdc-wfd-be/templates/deployment.yaml
kubernetes/sdc/charts/sdc-wfd-be/templates/job.yaml
kubernetes/sdc/charts/sdc-wfd-be/templates/service.yaml
kubernetes/sdc/charts/sdc-wfd-be/values.yaml
kubernetes/sdc/charts/sdc-wfd-fe/templates/service.yaml
kubernetes/sdc/charts/sdc-wfd-fe/values.yaml
kubernetes/sdc/requirements.yaml
kubernetes/sdc/resources/config/log/filebeat/filebeat.yml
kubernetes/sdc/templates/configmap.yaml
kubernetes/sdc/templates/secrets.yaml
kubernetes/sdc/values.yaml
kubernetes/sdnc/charts/dmaap-listener/templates/configmap.yaml
kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml
kubernetes/sdnc/charts/dmaap-listener/values.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/templates/configmap.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
kubernetes/sdnc/charts/sdnc-portal/templates/configmap.yaml
kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml
kubernetes/sdnc/charts/sdnc-portal/values.yaml
kubernetes/sdnc/charts/ueb-listener/templates/configmap.yaml
kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml
kubernetes/sdnc/charts/ueb-listener/values.yaml
kubernetes/sdnc/resources/config/conf/lcm-dg.properties
kubernetes/sdnc/resources/config/conf/netbox.properties [new file with mode: 0755]
kubernetes/sdnc/sdnc-prom/templates/configmap.yaml
kubernetes/sdnc/templates/configmap.yaml
kubernetes/sdnc/templates/service.yaml
kubernetes/sdnc/templates/statefulset.yaml
kubernetes/sdnc/values.yaml
kubernetes/so/.helmignore [changed mode: 0644->0755]
kubernetes/so/Chart.yaml [changed mode: 0644->0755]
kubernetes/so/charts/so-bpmn-infra/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-bpmn-infra/templates/configmap.yaml [moved from kubernetes/so/templates/log-configmap.yaml with 72% similarity, mode: 0755]
kubernetes/so/charts/so-bpmn-infra/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-bpmn-infra/templates/service.yaml [new file with mode: 0755]
kubernetes/so/charts/so-bpmn-infra/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-catalog-db-adapter/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-catalog-db-adapter/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-catalog-db-adapter/templates/configmap.yaml [new file with mode: 0755]
kubernetes/so/charts/so-catalog-db-adapter/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-catalog-db-adapter/templates/service.yaml [new file with mode: 0755]
kubernetes/so/charts/so-catalog-db-adapter/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-db-secrets/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-db-secrets/templates/secrets.yaml [new file with mode: 0755]
kubernetes/so/charts/so-mariadb/Chart.yaml [moved from kubernetes/so/charts/mariadb/Chart.yaml with 95% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/resources/config/mariadb/conf.d/mariadb1.cnf [moved from kubernetes/so/charts/mariadb/resources/config/mariadb/conf.d/mariadb1.cnf with 100% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/templates/NOTES.txt [moved from kubernetes/so/charts/mariadb/templates/NOTES.txt with 100% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/templates/configmap.yaml [moved from kubernetes/so/charts/mariadb/templates/configmap.yaml with 97% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/templates/deployment.yaml [moved from kubernetes/so/charts/mariadb/templates/deployment.yaml with 97% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/templates/pv.yaml [new file with mode: 0755]
kubernetes/so/charts/so-mariadb/templates/pvc.yaml [new file with mode: 0755]
kubernetes/so/charts/so-mariadb/templates/secrets.yaml [moved from kubernetes/so/charts/mariadb/templates/secrets.yaml with 98% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/templates/service.yaml [moved from kubernetes/vnfsdk/charts/vnfsdk-postgres/templates/service.yaml with 83% similarity, mode: 0755]
kubernetes/so/charts/so-mariadb/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-openstack-adapter/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-openstack-adapter/templates/configmap.yaml [new file with mode: 0755]
kubernetes/so/charts/so-openstack-adapter/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-openstack-adapter/templates/service.yaml [new file with mode: 0755]
kubernetes/so/charts/so-openstack-adapter/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-request-db-adapter/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-request-db-adapter/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-request-db-adapter/templates/configmap.yaml [new file with mode: 0755]
kubernetes/so/charts/so-request-db-adapter/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-request-db-adapter/templates/service.yaml [new file with mode: 0755]
kubernetes/so/charts/so-request-db-adapter/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdc-controller/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdc-controller/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdc-controller/templates/configmap.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdc-controller/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdc-controller/templates/service.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdc-controller/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdnc-adapter/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdnc-adapter/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdnc-adapter/templates/configmap.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdnc-adapter/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdnc-adapter/templates/service.yaml [new file with mode: 0755]
kubernetes/so/charts/so-sdnc-adapter/values.yaml [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/keystore_password [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/readme.txt [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/truststore_password [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/cadi_keystore_password [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/cadi_truststore_password [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/mso-server-key-store.jks [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/mso-trust-store.jks [new file with mode: 0755]
kubernetes/so/charts/so-ssl-certs/templates/secrets.yaml [new file with mode: 0755]
kubernetes/so/charts/so-vfc-adapter/Chart.yaml [new file with mode: 0755]
kubernetes/so/charts/so-vfc-adapter/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/charts/so-vfc-adapter/templates/configmap.yaml [new file with mode: 0755]
kubernetes/so/charts/so-vfc-adapter/templates/deployment.yaml [new file with mode: 0755]
kubernetes/so/charts/so-vfc-adapter/templates/service.yaml [moved from kubernetes/so/charts/mariadb/templates/service.yaml with 84% similarity, mode: 0755]
kubernetes/so/charts/so-vfc-adapter/values.yaml [new file with mode: 0755]
kubernetes/so/requirements.yaml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/filebeat/filebeat.yml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.apihandler-infra.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.appc.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.asdc.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.bpmn.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.msorequestsdbadapter.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.network.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.sdnc.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.tenant.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.vfc.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.vnf.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/log/logback.workflow-message-adapter.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/mso/encryption.key [changed mode: 0644->0755]
kubernetes/so/resources/config/mso/onap-ca-new.crt [changed mode: 0644->0755]
kubernetes/so/resources/config/mso/onap-ca.crt [changed mode: 0644->0755]
kubernetes/so/resources/config/mso/standalone-full-ha-mso.xml [changed mode: 0644->0755]
kubernetes/so/resources/config/overrides/override.yaml [new file with mode: 0755]
kubernetes/so/templates/NOTES.txt [changed mode: 0644->0755]
kubernetes/so/templates/configmap.yaml [changed mode: 0644->0755]
kubernetes/so/templates/deployment.yaml [changed mode: 0644->0755]
kubernetes/so/templates/service.yaml [changed mode: 0644->0755]
kubernetes/so/values.yaml [changed mode: 0644->0755]
kubernetes/uui/charts/uui-server/templates/NOTES.txt
kubernetes/uui/charts/uui-server/templates/deployment.yaml
kubernetes/uui/templates/NOTES.txt
kubernetes/vid/templates/deployment.yaml
kubernetes/vid/templates/service.yaml
kubernetes/vid/values.yaml
kubernetes/vnfsdk/requirements.yaml
kubernetes/vnfsdk/resources/config/marketplace_tables_postgres.sql [new file with mode: 0644]
kubernetes/vnfsdk/templates/NOTES.txt
kubernetes/vnfsdk/templates/configmap.yaml [new file with mode: 0644]
kubernetes/vnfsdk/templates/deployment.yaml
kubernetes/vnfsdk/templates/job.yaml [new file with mode: 0644]
kubernetes/vnfsdk/values.yaml

index 9656519..3728761 100644 (file)
@@ -4,6 +4,9 @@ kubernetes/dist/*
 requirements.lock
 **/charts/*.tgz
 
+# AAI Schema
+**/schema/*
+
 
 # Eclipse
 .classpath
diff --git a/TOSCA/Helm/onap-blueprint.yaml b/TOSCA/Helm/onap-blueprint.yaml
deleted file mode 100644 (file)
index c5b699b..0000000
+++ /dev/null
@@ -1,359 +0,0 @@
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright (c) 2017 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.
-#============LICENSE_END============================================
-
-tosca_definitions_version: cloudify_dsl_1_3
-
-imports:
-  - http://www.getcloudify.org/spec/cloudify/3.4.2/types.yaml
-  - http://www.getcloudify.org/spec/fabric-plugin/1.5/plugin.yaml
-
-inputs:
-  # For agent, toggle to true.
-  install_method:
-    default: none # For fabric use false.
-  ip:
-  user:
-    default: centos
-  namespace:
-    default: onap
-
-node_types:
-  cloudify.nodes.Helm:
-    derived_from: cloudify.nodes.SoftwareComponent
-    properties:
-      cwd:
-        default: /home/centos/oom/kubernetes
-      args:
-        default:
-        - onap
-        - mso
-    interfaces:
-      cloudify.interfaces.lifecycle:
-        # This is for fabric: # Run Anywhere.
-        start:
-          implementation: fabric.fabric_plugin.tasks.run_script
-          inputs:
-            script_path:
-              default: helminstall.sh # Relative to the blueprint file.
-            process:
-              default: &process_vars
-                cwd: { get_property: [ SELF, cwd ] }
-                args: { get_property: [ SELF, args ] }
-            fabric_env:
-              default: &fabric_env
-                user: { get_property: [ k8s_master, agent_config, user ] }
-                host_string: { get_property: [ k8s_master, ip ] }
-                key: { get_property: [ k8s_master, agent_config, key ] }
-        stop:
-          implementation: fabric.fabric_plugin.tasks.run_script
-          inputs:
-            script_path:
-              default: helmdelete.sh
-            process:
-              default: *process_vars
-            fabric_env:
-              default: *fabric_env
-
-node_templates:
-
-  k8s_master:
-     type: cloudify.nodes.Compute
-     properties:
-       ip: { get_input: ip }
-       agent_config:
-         install_method: { get_input: install_method } # False for Fabric.
-         key: { get_secret: agent_key_private }
-         user: { get_input: user }
-
-  k8s_env:
-    type: cloudify.nodes.SoftwareComponent
-    properties:
-    interfaces:
-      cloudify.interfaces.lifecycle:
-         start:
-          implementation: fabric.fabric_plugin.tasks.run_script
-          inputs:
-            script_path: k8s_setup_env.sh
-            process:
-              args:  [{ get_input: namespace }]
-            fabric_env:
-              host_string: { get_input: ip }
-              user: { get_input: user }
-              key: { get_secret: agent_key_private }
-         stop:
-          implementation: fabric.fabric_plugin.tasks.run_script
-          inputs:
-            script_path: k8s_delete_env.sh
-            process:
-              args:  [{ get_input: namespace }]
-            fabric_env:
-              host_string: { get_input: ip }
-              user: { get_input: user }
-              key: { get_secret: agent_key_private }
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_master
-
-  consul:
-     type: cloudify.nodes.Helm
-     properties:
-       args:
-       - { get_input: namespace }
-       - consul
-     relationships:
-       - type: cloudify.relationships.connected_to
-         target: k8s_env
-
-  msb:
-     type: cloudify.nodes.Helm
-     properties:
-       args:
-       - { get_input: namespace }
-       - msb
-     relationships:
-       - type: cloudify.relationships.connected_to
-         target: k8s_env
-
-  so:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - so
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  appc:
-     type: cloudify.nodes.Helm
-     properties:
-       args:
-       - { get_input: namespace }
-       - appc
-     relationships:
-       - type: cloudify.relationships.connected_to
-         target: k8s_env
-
-  dmaap:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - dmaap
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  oof:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - oof
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  sdnc:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - sdnc
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  vid:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - vid
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  robot:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - robot
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  policy:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - policy
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  portal:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - portal
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  aai:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - aai
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  sdc:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - sdc
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  log:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - log
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  cli:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - cli
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  multicloud:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - multicloud
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  clamp:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - clamp
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  vnfsdk:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - vnfsdk
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  uui:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - uui
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  aaf:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - aaf
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  vfc:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - vfc
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  dcaegen2:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - dcaegen2
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  esr:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - esr
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  sniro-emulator:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - sniro-emulator
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
-
-  nbi:
-    type: cloudify.nodes.Helm
-    properties:
-      args:
-      - { get_input: namespace }
-      - nbi
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: k8s_env
\ No newline at end of file
diff --git a/TOSCA/ONAP_TOSCA/onap_tosca.yaml b/TOSCA/ONAP_TOSCA/onap_tosca.yaml
new file mode 100644 (file)
index 0000000..a48f4bc
--- /dev/null
@@ -0,0 +1,432 @@
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2018 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.
+#============LICENSE_END============================================
+tosca_definitions_version: cloudify_dsl_1_3
+
+imports:
+  - http://www.getcloudify.org/spec/cloudify/4.3.1/types.yaml
+  - plugin:helm?version=3.0.0
+
+inputs:
+  tiller-server-ip:
+    description: the IP address of Kubernetes master
+  tiller-server-port:
+    description: the nodeport of tiller server
+  namespace:
+    default: onap
+  chart-repo-url:
+    default: https://nexus.onap.org/content/sites/oom-helm-staging
+  chart-version :
+    default: 2.0.0
+  stable-repo-url:
+    description: URL for stable repository
+    type: string
+    default: 'https://kubernetes-charts.storage.googleapis.com'
+
+
+
+node_templates:
+
+  onap_env:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: onap
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+      config: '{ "aaf": {"enabled": false}, "aai": {"enabled": false}, "appc": {"enabled": false}, "clamp": {"enabled": false}, "cli": {"enabled": false}, "consul": {"enabled": false}, "dcaegen2": {"enabled": false}, "dmaap": {"enabled": false}, "esr": {"enabled": false}, "log": {"enabled": false}, "sniro-emulator": {"enabled": false}, "msb": {"enabled": false}, "multicloud": {"enabled": false}, "nbi": {"enabled": false}, "oof": {"enabled": false}, "policy": {"enabled": false}, "pomba": {"enabled": false}, "portal": {"enabled": false}, "robot": {"enabled": false}, "sdc": {"enabled": false}, "sdnc": {"enabled": false}, "so": {"enabled": false}, "uui": {"enabled": false}, "vfc": {"enabled": false}, "vid": {"enabled": false}, "vnfsdk": {"enabled": false} }'
+
+  aaf:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: aaf
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  aai:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: aai
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  appc:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: appc
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  clamp:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: clamp
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  cli:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: cli
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  consul:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: consul
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  contrib:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: contrib
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  dcaegen2:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: dcaegen2
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+
+  dmaap:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: dmaap
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  esr:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: esr
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  log:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: log
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  sniro-emulator:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: sniro-emulator
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  oof:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: oof
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  msb:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: msb
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  multicloud:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: multicloud
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  nbi:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: nbi
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  policy:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: policy
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  pomba:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: pomba
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  portal:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: portal
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  robot:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: robot
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  sdc:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: sdc
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  sdnc:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: sdnc
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  so:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: so
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  uui:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: uui
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  vfc:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: vfc
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  vid:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: vid
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
+
+  vnfsdk:
+    type: onap.nodes.component
+    properties:
+      tiller-server-ip: { get_input: tiller-server-ip }
+      tiller-server-port: { get_input: tiller-server-port }
+      component-name: vnfsdk
+      chart-repo-url: { get_input: chart-repo-url }
+      chart-version: { get_input: chart-version }
+      namespace: { get_input: namespace }
+      stable-repo-url: { get_input: stable-repo-url}
+    relationships:
+      - type: cloudify.relationships.connected_to
+        target: onap_env
\ No newline at end of file
diff --git a/TOSCA/bootstrap.sh b/TOSCA/bootstrap.sh
new file mode 100644 (file)
index 0000000..3a415f0
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2018 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.
+#============LICENSE_END============================================
+
+# this script will init a community version Cloudify manager
+# 1.environment ubuntu 16.04
+# 2. git clone oom project into that ubuntu environment
+# 3. provide the Openstack information in /TOSCA/cloudify-environment-setup/input/openstack.yaml
+# 4. execute this script with sudo
+
+
+apt-get update 
+apt-get install build-essential libssl-dev libffi-dev python-dev gcc -y
+wget http://repository.cloudifysource.org/cloudify/18.3.23/community-release/cloudify-cli-community-18.3.23.deb
+dpkg -i cloudify-cli-community-18.3.23.deb
+cfy install cloudify-environment-setup/openstack.yaml -i cloudify-environment-setup/inputs/openstack.yaml --install-plugins --task-retries=30 --task-retry-interval=5
+cfy install cloudify-environment-setup/openstack.yaml -i cloudify-environment-setup/inputs/openstack.yaml --install-plugins --task-retries=30 --task-retry-interval=5
diff --git a/TOSCA/cloudify-environment-setup/imports/manager-configuration.yaml b/TOSCA/cloudify-environment-setup/imports/manager-configuration.yaml
new file mode 100644 (file)
index 0000000..5e0de73
--- /dev/null
@@ -0,0 +1,77 @@
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2018 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.
+#============LICENSE_END============================================
+
+inputs:
+
+  password:
+    description: >
+      Your manager password. If you do not provide one will be randomly generated, but it will not be displayed at the end.
+
+  rpm:
+    description: >
+      If inputs.bootstrap is false, this is the CLI RPM to install and bootstrap with.
+    default:  http://repository.cloudifysource.org/cloudify/18.3.23/community-release/cloudify-manager-install-community-18.3.23.rpm
+
+  blueprints:
+    default:
+    - file: update-blueprint.yaml
+      name: aws-example-network
+      url: https://github.com/cloudify-examples/aws-example-network/archive/4.3.zip
+    - file: simple-blueprint.yaml
+      name: openstack-example-network
+      url: https://github.com/cloudify-examples/openstack-example-network/archive/4.3.zip
+    - file: simple-blueprint.yaml
+      name: azure-example-network
+      url: https://github.com/cloudify-examples/azure-example-network/archive/4.3.zip
+    - file: simple-blueprint.yaml
+      name: gcp-example-network
+      url: https://github.com/cloudify-examples/gcp-example-network/archive/4.3.zip
+
+node_types:
+
+  cloudify.nodes.Manager.EnvironmentSetup:
+    derived_from: cloudify.nodes.Root
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        create:
+          implementation: fabric.fabric_plugin.tasks.run_task
+          inputs:
+            tasks_file:
+              default: scripts/manager/tasks.py
+            task_name:
+              default: create
+            task_properties:
+              default:
+                private_ip: { get_input: private_ip }
+                public_ip: { get_input: public_ip }
+                rpm: { get_input: rpm }
+                secrets: { get_input: secrets }
+                blueprints: { get_input: blueprints }
+                password: { get_input: password }
+            fabric_env:
+              default:
+                host_string: { get_input: public_ip }
+                user: { get_input: cloudify_image_username }
+                key_filename: { get_input: cloudify_key_file  }
+
+node_templates:
+
+  ManagerSetup:
+    type: cloudify.nodes.Manager.EnvironmentSetup
+    relationships:
+      - type: cloudify.relationships.depends_on
+        target: cloudify_host
similarity index 71%
rename from TOSCA/Helm/helmdelete.sh
rename to TOSCA/cloudify-environment-setup/inputs/openstack.yaml
index 201471b..a5ed88a 100644 (file)
@@ -1,7 +1,6 @@
-#!/bin/bash
 # ============LICENSE_START==========================================
 # ===================================================================
-# Copyright (c) 2017 AT&T
+# Copyright (c) 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # limitations under the License.
 #============LICENSE_END============================================
 
-helm delete $2 --purge
-
-
+username: -cut-
+keystone_password: -cut-
+tenant_name: -cut-
+auth_url: https://-cut-:5000/v2.0
+region: RegionOne
+external_network_name: GATEWAY_NET
+centos_core_image: -cut-
+ubuntu_trusty_image: -cut-
+small_image_flavor: 2
+large_image_flavor: 4
+password: admin
+nameservers: []
\ No newline at end of file
diff --git a/TOSCA/cloudify-environment-setup/openstack.yaml b/TOSCA/cloudify-environment-setup/openstack.yaml
new file mode 100644 (file)
index 0000000..d794a9e
--- /dev/null
@@ -0,0 +1,399 @@
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2018 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.
+#============LICENSE_END============================================
+
+tosca_definitions_version: cloudify_dsl_1_3
+
+imports:
+  - http://www.getcloudify.org/spec/cloudify/4.3.1/types.yaml
+  - http://www.getcloudify.org/spec/openstack-plugin/2.7.4/plugin.yaml
+  - http://www.getcloudify.org/spec/utilities-plugin/1.5.2/plugin.yaml
+  - http://www.getcloudify.org/spec/fabric-plugin/1.5.1/plugin.yaml
+  - imports/manager-configuration.yaml
+
+inputs:
+
+  helm_version:
+    default: v2.9.1
+
+  username:
+    description: OS_USERNAME as specified in Openstack RC file.
+
+  keystone_password:
+    description: Openstack user password.
+
+  tenant_name:
+    description: OS_TENANT_NAME as specified in Openstack RC file.
+
+  auth_url:
+    description: OS_AUTH_URL as specified in Openstack RC file.
+
+  region:
+    description: OS_REGION_NAME as specified in Openstack RC file.
+
+  external_network_name:
+    description: Openstack tenant external network name.
+
+  local_ssh_directory:
+    default: '~/.ssh/'
+
+  manager_key_name:
+    default: cfy-manager-key-os
+
+  agent_key_name:
+    default: cfy-agent-key-os
+
+  cloudify_key_file:
+    default: { concat: [ { get_input: local_ssh_directory }, { get_input: manager_key_name } ] }
+
+  nameservers:
+    default: [8.8.4.4, 8.8.8.8]
+
+  public_network_subnet_cidr:
+    default: 192.168.120.0/24
+
+  public_network_subnet_allocation_pools:
+    default:
+    - start: 192.168.120.2
+      end: 192.168.120.254
+
+  private_network_subnet_cidr:
+    default: 192.168.121.0/24
+
+  private_network_subnet_allocation_pools:
+    default:
+    - start: 192.168.121.2
+      end: 192.168.121.254
+
+  large_image_flavor:
+    type: string
+
+  small_image_flavor:
+    type: string
+
+  cloudify_image_username:
+    default: centos
+
+  centos_core_image:
+    type: string
+
+  ubuntu_trusty_image:
+    type: string
+
+  private_ip:
+    description: >
+      Resolving the IP for manager setup.
+    default: { get_attribute: [ cloudify_host, ip ] }
+
+  public_ip:
+    description: >
+      Resolving the IP for manager setup.
+    default: { get_attribute: [ public_network_subnet_port_fip, floating_ip_address ] }
+
+  secrets:
+    description: >
+      key, value pairs of secrets used in AWS blueprint examples.
+    default:
+    - key: keystone_username
+      value: { get_input: username }
+    - key: keystone_password
+      value: { get_input: keystone_password }
+    - key: keystone_tenant_name
+      value: { get_input: tenant_name }
+    - key: keystone_url
+      value: { get_input: auth_url }
+    - key: region
+      value: { get_input: region }
+    - key: keystone_region
+      value: { get_input: region }
+    - key: external_network_name
+      value: { get_property: [ external_network, resource_id ] }
+    - key: router_name
+      value: { get_attribute: [ public_network_router, external_name ] }
+    - key: public_network_name
+      value: { get_attribute: [ public_network, external_name ] }
+    - key: private_network_name
+      value: { get_attribute: [ private_network, external_name ] }
+    - key: public_subnet_name
+      value: { get_attribute: [ public_network_subnet, external_name ] }
+    - key: private_subnet_name
+      value: { get_attribute: [ private_network_subnet, external_name ] }
+    - key: ubuntu_trusty_image
+      value: { get_input: ubuntu_trusty_image }
+    - key: centos_core_image
+      value: { get_input: centos_core_image }
+    - key: small_image_flavor
+      value: { get_input: small_image_flavor }
+    - key: large_image_flavor
+      value: { get_input: large_image_flavor }
+    - key: agent_key_public
+      value: { get_attribute: [ agent_key, public_key_export ] }
+    - key: agent_key_private
+      value: { get_attribute: [ agent_key, private_key_export ] }
+
+dsl_definitions:
+
+  client_config: &client_config
+    username: { get_input: username }
+    password: { get_input: keystone_password }
+    tenant_name: { get_input: tenant_name }
+    auth_url: { get_input: auth_url }
+    region: { get_input: region }
+
+node_templates:
+
+  manager_key:
+    type: cloudify.keys.nodes.RSAKey
+    properties:
+      resource_config:
+        public_key_path: { concat: [ { get_input: local_ssh_directory }, { get_input: manager_key_name }, '.pub' ] }
+        private_key_path: { concat: [ { get_input: local_ssh_directory }, { get_input: manager_key_name } ] }
+        openssh_format: true
+      use_secret_store: false
+      key_name: { get_input: manager_key_name }
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        create:
+          implementation: keys.cloudify_ssh_key.operations.create
+          inputs:
+            store_private_key_material: true
+
+  agent_key:
+    type: cloudify.keys.nodes.RSAKey
+    properties:
+      resource_config:
+        public_key_path: { concat: [ { get_input: local_ssh_directory }, { get_input: agent_key_name }, '.pub' ] }
+        private_key_path: { concat: [ { get_input: local_ssh_directory }, { get_input: agent_key_name } ] }
+        openssh_format: true
+      use_secret_store: false
+      key_name: { get_input: agent_key_name }
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        create:
+          implementation: keys.cloudify_ssh_key.operations.create
+          inputs:
+            store_private_key_material: true
+
+  external_network:
+    type: cloudify.openstack.nodes.Network
+    properties:
+      openstack_config: *client_config
+      use_external_resource: true
+      resource_id: { get_input: external_network_name }
+
+  public_network_subnet_port_fip:
+    type: cloudify.openstack.nodes.FloatingIP
+    properties:
+      openstack_config: *client_config
+      floatingip:
+        floating_network_name: { get_input: external_network_name }
+
+  public_network:
+    type: cloudify.openstack.nodes.Network
+    properties:
+      openstack_config: *client_config
+
+  private_network:
+    type: cloudify.openstack.nodes.Network
+    properties:
+      openstack_config: *client_config
+
+  public_network_router:
+    type: cloudify.openstack.nodes.Router
+    properties:
+      openstack_config: *client_config
+    relationships:
+    - type: cloudify.relationships.connected_to
+      target: external_network
+
+  public_network_subnet:
+    type: cloudify.openstack.nodes.Subnet
+    properties:
+      openstack_config: *client_config
+      subnet:
+        ip_version: 4
+        cidr: { get_input: public_network_subnet_cidr }
+        dns_nameservers: { get_input: nameservers }
+        allocation_pools: { get_input: public_network_subnet_allocation_pools }
+    relationships:
+    - type: cloudify.relationships.contained_in
+      target: public_network
+    - type: cloudify.openstack.subnet_connected_to_router
+      target: public_network_router
+
+  private_network_subnet:
+    type: cloudify.openstack.nodes.Subnet
+    properties:
+      openstack_config: *client_config
+      subnet:
+        ip_version: 4
+        cidr: { get_input: private_network_subnet_cidr }
+        dns_nameservers: { get_input: nameservers }
+        allocation_pools: { get_input: private_network_subnet_allocation_pools }
+    relationships:
+    - type: cloudify.relationships.contained_in
+      target: private_network
+    - type: cloudify.openstack.subnet_connected_to_router
+      target: public_network_router
+
+  cloudify_security_group:
+    type: cloudify.openstack.nodes.SecurityGroup
+    properties:
+      openstack_config: *client_config
+      rules:
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: null
+        port_range_max: null
+        protocol: icmp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 22
+        port_range_max: 22
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 80
+        port_range_max: 80
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 443
+        port_range_max: 443
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 5671
+        port_range_max: 5671
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 8086
+        port_range_max: 8086
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 8101
+        port_range_max: 8101
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 8300
+        port_range_max: 8301
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 8500
+        port_range_max: 8500
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 15432
+        port_range_max: 15432
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 22000
+        port_range_max: 22000
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 53229
+        port_range_max: 53229
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 53333
+        port_range_max: 53333
+        protocol: tcp
+      - remote_ip_prefix: 0.0.0.0/0
+        port_range_min: 30000
+        port_range_max: 40000
+        protocol: tcp
+
+  public_network_subnet_port:
+    type: cloudify.openstack.nodes.Port
+    properties:
+      openstack_config: *client_config
+    relationships:
+    - type: cloudify.relationships.contained_in
+      target: public_network
+    - type: cloudify.relationships.depends_on
+      target: public_network_subnet
+    - type: cloudify.openstack.port_connected_to_security_group
+      target: cloudify_security_group
+    - type: cloudify.openstack.port_connected_to_floating_ip
+      target: public_network_subnet_port_fip
+
+  private_network_subnet_port:
+    type: cloudify.openstack.nodes.Port
+    properties:
+      openstack_config: *client_config
+    relationships:
+    - type: cloudify.relationships.contained_in
+      target: private_network
+    - type: cloudify.relationships.depends_on
+      target: private_network_subnet
+    - type: cloudify.openstack.port_connected_to_security_group
+      target: cloudify_security_group
+
+  cloudify_host_cloud_config:
+    type: cloudify.nodes.CloudInit.CloudConfig
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        create:
+          inputs:
+            resource_config:
+              users:
+              - name: { get_input: cloudify_image_username }
+                primary-group: wheel
+                shell: /bin/bash
+                sudo: ['ALL=(ALL) NOPASSWD:ALL']
+                ssh-authorized-keys:
+                - { get_attribute: [ manager_key, public_key_export ] }
+              packages:
+                - wget
+              runcmd:
+              - { concat: [ 'usermod -aG wheel ', { get_input: cloudify_image_username } ] }
+              - yum install -y python-backports-ssl_match_hostname python-setuptools python-backports
+              - { concat: [ 'wget http://storage.googleapis.com/kubernetes-helm/helm-', { get_input: helm_version }, -linux-amd64.tar.gz ] }
+              - { concat: [ 'tar -zxvf helm-', { get_input: helm_version }, '-linux-amd64.tar.gz' ] }
+              - mv linux-amd64/helm /usr/bin/helm
+    relationships:
+    - type: cloudify.relationships.depends_on
+      target: manager_key
+    - type: cloudify.relationships.depends_on
+      target: public_network_subnet_port
+    - type: cloudify.relationships.depends_on
+      target: private_network_subnet_port
+
+  cloudify_host:
+    type: cloudify.openstack.nodes.Server
+    properties:
+      openstack_config: *client_config
+      agent_config:
+        install_method: none
+      server:
+        key_name: ''
+        image: { get_input: centos_core_image }
+        flavor: { get_input: large_image_flavor }
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        create:
+          inputs:
+            args:
+              image: { get_input: centos_core_image }
+              flavor: { get_input: large_image_flavor }
+              userdata: { get_attribute: [ cloudify_host_cloud_config, cloud_config ] }
+              nics:
+              - port-id: { get_attribute: [ public_network_subnet_port, external_id ] }
+              # - port-id: { get_attribute: [ private_network_subnet_port, external_id ] }
+    relationships:
+    # Implicitly dependent on ports.
+    - type: cloudify.relationships.depends_on
+      target: cloudify_host_cloud_config
+
+outputs:
+
+  manager_ip:
+    value: { get_input: public_ip }
diff --git a/TOSCA/cloudify-environment-setup/scripts/manager/tasks.py b/TOSCA/cloudify-environment-setup/scripts/manager/tasks.py
new file mode 100644 (file)
index 0000000..e929d55
--- /dev/null
@@ -0,0 +1,206 @@
+# ============LICENSE_START==========================================
+# ===================================================================
+# Copyright (c) 2018 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.
+#============LICENSE_END============================================
+
+from tempfile import NamedTemporaryFile
+from fabric.api import get, sudo, run
+from cloudify import ctx
+from cloudify.exceptions import NonRecoverableError, RecoverableError
+
+CONFIG_PATH = '/etc/cloudify/config.yaml'
+
+
+def install_rpm(_rpm):
+    try:
+        sudo("rpm -i {0}".format(_rpm))
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+    return True
+
+
+def install_requirements():
+    try:
+        sudo("sudo yum install -y python-backports-ssl_match_hostname "
+             "python-setuptools python-backports")
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+    return True
+
+
+def update_config(private, public, _config_path):
+    SED = "sed -i 's|{0}|{1}|g' {2}"
+
+    old_private_ip = "  private_ip: \\x27\\x27"
+    new_private_ip = "  private_ip: \\x27{0}\\x27".format(private)
+
+    try:
+        sudo(SED.format(old_private_ip, new_private_ip, _config_path))
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+
+    old_public_ip = "  public_ip: \\x27\\x27"
+    new_public_ip = "  public_ip: \\x27{0}\\x27".format(public)
+
+    try:
+        sudo(SED.format(old_public_ip, new_public_ip, _config_path))
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+
+    old_networks = "  networks: {}"
+    new_networks = "  networks: {{ \\x27default\\x27: \\x27{0}\\x27, \\x27external\\x27: \\x27{1}\\x27 }}".format(
+        private, public)
+
+    try:
+        sudo(SED.format(old_networks, new_networks, _config_path))
+        sudo("chmod 775 {0}".format(_config_path))
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+    return True
+
+
+def cfy_install(password, old=False):
+    sudo("chmod 777 {0}".format(CONFIG_PATH))
+
+    install_string = 'cfy_manager install'
+
+    if password:
+        install_string = \
+            install_string + ' ' + '--admin-password {0}'.format(
+                password)
+    if old:
+        install_string = install_string + '  --clean-db'
+    elif not old:
+        try:
+            sudo("sudo yum install -y openssl-1.0.2k")
+        except Exception as e:
+            raise NonRecoverableError(str(e))
+
+    try:
+        run(install_string)
+    except Exception as e:
+        ctx.logger.error(str(e))
+        return False
+
+    sudo("chmod 775 {0}".format(CONFIG_PATH))
+
+    return True
+
+
+def plugins_upload():
+    try:
+        run("cfy plugins bundle-upload")
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+
+    return True
+
+
+def secrets_create(secret_key, secret_value):
+    try:
+        run("cfy secrets create {0} -s \"{1}\"".format(
+            secret_key, secret_value))
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+
+    return True
+
+
+def blueprints_upload(file, name, url):
+    try:
+        run("cfy blueprints upload -n {0} -b {1} {2}".format(file, name, url))
+    except Exception as e:
+        raise NonRecoverableError(str(e))
+
+    return True
+
+
+def create(private_ip,
+           public_ip,
+           rpm,
+           secrets,
+           blueprints,
+           config_path=CONFIG_PATH,
+           password=None,
+           **_):
+    ctx.logger.info("Installing Cloudify Manager components.")
+
+    try:
+        run("echo Hello")
+    except Exception as e:
+        raise RecoverableError(str(e))
+
+    if not ctx.instance.runtime_properties.get('installed_rpm'):
+        install_requirements()
+        ctx.instance.runtime_properties['installed_rpm'] = install_rpm(rpm)
+
+    if not ctx.instance.runtime_properties.get('updated_config'):
+        ctx.instance.runtime_properties['updated_config'] = \
+            update_config(private_ip, public_ip, config_path)
+
+    if 'cfy_installed' not in ctx.instance.runtime_properties:
+        cfy_install_output = cfy_install(password)
+    else:
+        cfy_install_output = cfy_install(password, old=True)
+
+    ctx.instance.runtime_properties['cfy_installed'] = cfy_install_output
+    if not cfy_install_output:
+        raise RecoverableError('cfy install failed.')
+
+    if not ctx.instance.runtime_properties.get('plugins_uploaded'):
+        try:
+            run(
+                "cfy plugins upload https://nexus.onap.org/content/sites/raw/org.onap.ccsdk.platform.plugins/plugins/helm-3.0.0-py27-none-linux_x86_64.wgn -y https://nexus.onap.org/content/sites/raw/org.onap.ccsdk.platform.plugins/type_files/helm/1.1.0/helm-type.yaml")
+        except Exception as e:
+            raise NonRecoverableError(str(e))
+        ctx.instance.runtime_properties['plugins_uploaded'] = plugins_upload()
+
+    more_secrets = [
+        {'key': 'cfy_user', 'value': 'admin'},
+        {'key': 'kubernetes_master_port', 'value': 'kubernetes_master_port'},
+        {'key': 'kubernetes-admin_client_certificate_data',
+         'value': 'kubernetes-admin_client_certificate_data'},
+        {'key': 'kubernetes_master_ip', 'value': 'kubernetes_master_ip'},
+        {'key': 'kubernetes_certificate_authority_data',
+         'value': 'kubernetes_certificate_authority_data'},
+        {'key': 'kubernetes-admin_client_key_data',
+         'value': 'kubernetes-admin_client_key_data'},
+        {'key': 'cfy_password', 'value': password or 'cfy_password'},
+        {'key': 'cfy_tenant', 'value': 'default_tenant'},
+        {'key': 'kubernetes_token', 'value': 'kubernetes_token'}
+    ]
+    for ms in more_secrets:
+        secrets.append(ms)
+
+    for secret in secrets:
+        secrets_create(
+            secret.get('key'),
+            secret.get('value'))
+
+    for blueprint in blueprints:
+        blueprints_upload(
+            blueprint.get('file'),
+            blueprint.get('name'),
+            blueprint.get('url'))
+
+    ctx.logger.info(
+        "Initialize your CLI profile: "
+        "`cfy profiles use "
+        "{0} -u admin -p {1} -t default_tenant`".format(public_ip,
+                                                        password or "_"))
+    if not password:
+        ctx.logger.info(
+            "Since you did not provide a password, scroll up though "
+            "the execution log and search for \"Manager password is\".")
index ad1f89e..f20097d 100644 (file)
@@ -391,16 +391,28 @@ Ensure you've disabled any proxy settings the browser you are using to access
 the portal and then simply access the familiar URL:
 http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
 
-.. note:: Alternatives Considered.
 
-  Kubernetes port forwarding was considered but discarded as it would require
-  the end user to run a script that opens up port forwarding tunnels to each of
-  the pods that provides a portal application widget.
+.. note::     
 
-  Reverting to a VNC server similar to what was deployed in the Amsterdam
-  release was also considered but there were many issues with resolution, lack
-  of volume mount, /etc/hosts dynamic update, file upload that were a tall order
-  to solve in time for the Beijing release.
+   | Alternatives Considered:
+
+   -  Kubernetes port forwarding was considered but discarded as it would require
+      the end user to run a script that opens up port forwarding tunnels to each of
+      the pods that provides a portal application widget.
+
+   -  Reverting to a VNC server similar to what was deployed in the Amsterdam
+      release was also considered but there were many issues with resolution, lack
+      of volume mount, /etc/hosts dynamic update, file upload that were a tall order
+      to solve in time for the Beijing release.
+
+   Observations:
+
+   -  If you are not using floating IPs in your Kubernetes deployment and directly attaching
+      a public IP address (i.e. by using your public provider network) to your K8S Node
+      VMs' network interface, then the output of 'kubectl -n onap get services | grep "portal-app"'
+      will show your public IP instead of the private network's IP. Therefore,
+      you can grab this public IP directly (as compared to trying to find the floating
+      IP first) and map this IP in /etc/hosts.
 
 .. figure:: oomLogoV2-Monitor.png
    :align: right
@@ -675,4 +687,4 @@ deployment enter::
 
 will remove `so` as the configuration indicates it's no longer part of the
 deployment. This might be useful if a one wanted to replace just `so` by
-installing a custom version.
+installing a custom version.  
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 438835d..449fbe4 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 ZTE
+# Modifications Copyright © 2018 AT&T, 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.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 00832d6..828142f 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP AAF Certificate Manager
 name: aaf-cm
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.pkcs11 b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.pkcs11
new file mode 100644 (file)
index 0000000..05fe60f
--- /dev/null
@@ -0,0 +1 @@
+name = localca
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 5b36e11..549a3c7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 3b0e33f..d17b44a 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9552dfd..645b7bd 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 74897d6..91396b9 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 #action widget details
 AAI.model-version-id.action=fd7fb09e-d930-41b9-b83f-cfde9df48640
 AAI.model-invariant-id.action=af593b4b-490e-4665-ad74-2f6351c0a7ce
@@ -264,4 +279,7 @@ AAI.model-invariant-id.vpn-binding=9e23b675-db2b-488b-b459-57aa9857baa0
 AAI.model-version-id.vpn-binding=21a146e5-9901-448c-9197-723076770119
 #vserver widget details
 AAI.model-invariant-id.vserver=ff69d4e0-a8e8-4108-bdb0-dd63217e63c7
-AAI.model-version-id.vserver=8ecb2c5d-7176-4317-a255-26274edfdd53
\ No newline at end of file
+AAI.model-version-id.vserver=8ecb2c5d-7176-4317-a255-26274edfdd53
+#cr widget details
+AAI.model-invariant-id.cr=425b2158-e51d-4509-9945-dad4556474a3
+AAI.model-version-id.cr=2a160989-b202-47dd-874b-4a0f275998f7
index e7c6459..ff33c17 100644 (file)
@@ -1,47 +1,47 @@
-{"roles": [
-    {
-        "name": "admin",
-        "functions": [
-            {
-                "name": "generateArtifacts",
-                "methods": [{"name": "POST"}]
-            }
-        ],
-        "users": [
-            {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}
-        ]
-    },
-    {
-        "name": "ops",
-        "functions": [{
-            "name": "actions",
-            "methods": [{"name": "POST"}]
-        }],
-        "users": [
-            {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}
-        ]
-    },
-    {
-        "name": "readonly",
-        "functions": [
-            {
-                "name": "actions",
-                "methods": [{"name": "GET"}]
-            }
-        ],
-        "users": [
-            {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}
-        ]
-    },
-    {
-        "name": "basicauth",
-        "functions": [{
-            "name": "util",
-            "methods": [{"name": "GET"}]
-        }],
-        "users": [{
-            "user": "aai",
-            "pass": "OBF:deadbeef"
-        }]
-    }
-]}
+{"roles": [\r
+    {\r
+        "name": "admin",\r
+        "functions": [\r
+            {\r
+                "name": "generateArtifacts",\r
+                "methods": [{"name": "POST"}]\r
+            }\r
+        ],\r
+        "users": [\r
+            {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}\r
+        ]\r
+    },\r
+    {\r
+        "name": "ops",\r
+        "functions": [{\r
+            "name": "actions",\r
+            "methods": [{"name": "POST"}]\r
+        }],\r
+        "users": [\r
+            {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}\r
+        ]\r
+    },\r
+    {\r
+        "name": "readonly",\r
+        "functions": [\r
+            {\r
+                "name": "actions",\r
+                "methods": [{"name": "GET"}]\r
+            }\r
+        ],\r
+        "users": [\r
+            {"username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"}\r
+        ]\r
+    },\r
+    {\r
+        "name": "basicauth",\r
+        "functions": [{\r
+            "name": "util",\r
+            "methods": [{"name": "GET"}]\r
+        }],\r
+        "users": [{\r
+            "user": "aai",\r
+            "pass": "OBF:deadbeef"\r
+        }]\r
+    }\r
+]}\r
index e7dfda0..ef85c23 100644 (file)
@@ -1,2 +1,16 @@
+# Copyright © 2018 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.
+
 auth.policy.file=/auth/auth_policy.json
 auth.authentication.disable=true
diff --git a/kubernetes/aai/charts/aai-babel/resources/config/filter-types.properties b/kubernetes/aai/charts/aai-babel/resources/config/filter-types.properties
new file mode 100644 (file)
index 0000000..fcf139f
--- /dev/null
@@ -0,0 +1 @@
+AAI.instance-group-types=org.openecomp.groups.NetworkCollection,org.openecomp.groups.VfcInstanceGroup
index f406dc8..878d8c0 100644 (file)
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2018 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.
+-->
 <!DOCTYPE xml>
 <configuration scan="true" scanPeriod="30 seconds" debug="true">
   <include resource="org/springframework/boot/logging/logback/base.xml" />
index ea304dc..3a8bdd5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2aac029..849e479 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9875e57..5b21e17 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 745c73b..eeb27ed 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2239c9a..7ba1c6b 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -24,7 +25,7 @@ global:
 #################################################################
 
 # application image
-image: onap/babel:1.2.0
+image: onap/babel:1.3-STAGING-latest
 
 # application configuration
 config:
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 17694cb..f36474c 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI Cassandra
 name: aai-cassandra
index 1aded3c..17176f1 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index 1a00b3c..4c4b979 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: apps/v1beta1
 kind: StatefulSet
 metadata:
index f45a450..b949064 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 #{{ if .Values.persistence.enabled }}
 {{- $root := . -}}
 {{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
index 05f2d08..22055d6 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for cassandra.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
index 1704337..73d66bf 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9552dfd..645b7bd 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ee04a71..a059e86 100644 (file)
@@ -1,19 +1,19 @@
-{
-       "roles": [
-               {
-                       "name": "admin",
-                       "functions": [
-                               {
-                                       "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]
-                               }
-                       ],
-
-                       "users": [
-                               {
-                                       "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
-                               }
-                       ]
-               }
-       ]
-}
-
+{\r
+       "roles": [\r
+               {\r
+                       "name": "admin",\r
+                       "functions": [\r
+                               {\r
+                                       "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]\r
+                               }\r
+                       ],\r
+\r
+                       "users": [\r
+                               {\r
+                                       "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"\r
+                               }\r
+                       ]\r
+               }\r
+       ]\r
+}\r
+\r
index 9eec841..c4c7271 100644 (file)
Binary files a/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore and b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore differ
index 3b90c55..0aba797 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 keyName=aai-uuid
 sourceOfTruthName=source-of-truth
 createdTsName=aai-created-ts
index b3d7bc2..38fd64c 100644 (file)
@@ -1,3 +1,19 @@
+<!--
+# Copyright © 2018 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.
+-->
+
 <beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:util="http://www.springframework.org/schema/util"
@@ -8,11 +24,17 @@ xsi:schemaLocation="
        http://www.springframework.org/schema/util/spring-util.xsd
        ">
 
-    <!-- Event publisher to pass to the Champ library for logging raw graph
-         events (Kafka implementation). -->
-    <bean id="champEventPublisher" class="org.onap.aai.event.client.KafkaEventPublisher" >
-        <constructor-arg name="hosts" value="message-router-kafka.{{.Release.Namespace}}:9092" />
-        <constructor-arg name="topic" value="champRawEvents" />
+    <bean id="champEventPublisher" class="org.onap.aai.event.client.DMaaPEventPublisher" >
+        <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:{{.Values.event.port.dmaap}}" />
+        <constructor-arg name="topic" value="{{.Values.event.publisher.topic}}" />
+        <constructor-arg name="username" value="" />
+        <constructor-arg name="password" value="" />
+        <constructor-arg name="maxBatchSize" value="100" />
+        <constructor-arg name="maxAgeMs" value="250" />
+        <constructor-arg name="delayBetweenBatchesMs" value="50" />
+        <constructor-arg name="transportType" value="HTTPAUTH" />
+        <constructor-arg name="protocol" value="{{.Values.event.protocol}}" />
+        <constructor-arg name="contentType" value="application/json" />
     </bean>
 
     <!-- Graph Implementation Configuration-->
@@ -30,8 +52,7 @@ xsi:schemaLocation="
 
         {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
         {{- $global := . }}
-        <entry key="storage.hostname" value="{{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-aai-cassandra-{{ $i }},{{- end }}"/>
-        <entry key="storage.port" value="9160"/>
+        <entry key="storage.hostname" value="{{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}"/>
     </util:map>
 
     <!-- Janus Implementation -->
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-champ/resources/config/log/logback.xml
new file mode 100644 (file)
index 0000000..1fbd913
--- /dev/null
@@ -0,0 +1,191 @@
+<!--
+Copyright © 2018 Amdocs, 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.
+-->
+
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+  <!-- Service-specific properties -->
+  <property name="componentName" value="AAI-CHAMP" />
+
+  <!-- directory path for logs -->
+  <property name="logDir" value="/var/log/onap" />
+  <property name="logDirectory" value="${logDir}/${componentName}" />
+
+  <!--  default eelf log file names -->
+  <property name="generalLogName" value="error" />
+  <property name="metricsLogName" value="metrics" />
+  <property name="auditLogName" value="audit" />
+  <property name="debugLogName" value="debug" />
+
+  <property name="errorLogPattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{RequestId}|%thread|Champ|%mdc{PartnerName}|%logger||%.-5level|%msg%n" />
+  <property name="auditMetricPattern" value="%m%n" />
+
+  <!-- Example evaluator filter applied against console appender -->
+  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+    <encoder>
+      <pattern>${errorLogPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <!-- ============================================================================ -->
+  <!-- EELF Appenders -->
+  <!-- ============================================================================ -->
+
+  <appender name="EELF"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${generalLogName}.log</file>
+    <rollingPolicy
+      class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${errorLogPattern}</pattern>
+    </encoder>
+  </appender>
+  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+    <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+      <level>INFO</level>
+    </filter>
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELF" />
+  </appender>
+
+  <appender name="EELFAudit"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${auditLogName}.log</file>
+    <rollingPolicy
+      class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${auditMetricPattern}</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.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${auditMetricPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFMetrics"/>
+  </appender>
+
+  <appender name="EELFDebug"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${debugLogName}.log</file>
+    <rollingPolicy
+      class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${errorLogPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFDebug" />
+    <includeCallerData>false</includeCallerData>
+  </appender>
+
+  <!-- ============================================================================ -->
+  <!--  EELF loggers -->
+  <!-- ============================================================================ -->
+  <logger name="com.att.eelf" level="info" additivity="false">
+    <appender-ref ref="asyncEELF" />
+    <appender-ref ref="asyncEELFDebug" />
+  </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>
+
+  <!-- Spring related loggers -->
+  <logger name="org.springframework" level="WARN" />
+  <logger name="org.springframework.beans" level="WARN" />
+  <logger name="org.springframework.web" level="WARN" />
+  <logger name="com.blog.spring.jms" level="WARN" />
+
+  <!-- AJSC Services (bootstrap services) -->
+  <logger name="ajsc" level="WARN" />
+  <logger name="ajsc.RouteMgmtService" level="WARN" />
+  <logger name="ajsc.ComputeService" level="WARN" />
+  <logger name="ajsc.VandelayService" level="WARN" />
+  <logger name="ajsc.FilePersistenceService" level="WARN" />
+  <logger name="ajsc.UserDefinedJarService" level="WARN" />
+  <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
+  <logger name="ajsc.LoggingConfigurationService" level="WARN" />
+
+  <!-- AJSC related loggers -->
+  <logger name="ajsc.restlet" level="WARN" />
+  <logger name="ajsc.servlet" level="WARN" />
+
+  <!-- General loggers -->
+  <logger name="com.att" level="INFO" />
+  <logger name="org.onap" level="INFO" />
+  <logger name="org.openecomp" level="INFO" />
+
+  <!-- Other Loggers that may help troubleshoot -->
+  <logger name="net.sf" level="WARN" />
+  <logger name="org.apache.commons.httpclient" level="WARN" />
+  <logger name="org.apache.commons" level="WARN" />
+  <logger name="org.apache.coyote" level="WARN" />
+  <logger name="org.apache.jasper" level="WARN" />
+
+  <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
+       May aid in troubleshooting) -->
+  <logger name="org.apache.camel" level="WARN" />
+  <logger name="org.apache.cxf" level="WARN" />
+  <logger name="org.apache.camel.processor.interceptor" level="WARN" />
+  <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
+  <logger name="org.apache.cxf.service" level="WARN" />
+  <logger name="org.restlet" level="WARN" />
+  <logger name="org.apache.camel.component.restlet" level="WARN" />
+
+  <!-- logback internals logging -->
+  <logger name="ch.qos.logback.classic" level="WARN" />
+  <logger name="ch.qos.logback.core" level="WARN" />
+
+  <root>
+    <appender-ref ref="asyncEELF" />
+    <!-- <appender-ref ref="asyncEELFDebug" /> -->
+  </root>
+
+</configuration>
index a085839..42733a7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 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,3 +28,11 @@ metadata:
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/dynamic/conf/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-log-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
\ No newline at end of file
index 0941f44..d2f7bca 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -30,23 +31,6 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
-      initContainers:
-      - command:
-        - /root/ready.py
-        args:
-        - --container-name
-        - aai-resources
-        - --container-name
-        - message-router-kafka
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              apiVersion: v1
-              fieldPath: metadata.namespace
-        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
-        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-        name: {{ include "common.name" . }}-readiness
       containers:
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -96,7 +80,10 @@ spec:
           - mountPath: /opt/app/champ-service/dynamic/conf/champ-beans.xml
             name: {{ include "common.fullname" . }}-dynamic-config
             subPath: champ-beans.xml
-          - mountPath: /logs
+          - mountPath: /opt/app/champ-service/bundleconfig/etc/logback.xml
+            name: {{ include "common.fullname" . }}-logback-config
+            subPath: logback.xml
+          - mountPath: /var/log/onap
             name: {{ include "common.fullname" . }}-logs
           resources:
 {{ toYaml .Values.resources | indent 12 }}
@@ -109,6 +96,19 @@ spec:
 {{ toYaml .Values.affinity | indent 10 }}
         {{- end }}
 
+        # side car containers
+        - name: filebeat-onap
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts:
+          - mountPath: /usr/share/filebeat/filebeat.yml
+            subPath: filebeat.yml
+            name: filebeat-conf
+          - mountPath: /var/log/onap
+            name: {{ include "common.fullname" . }}-logs
+          - mountPath: /usr/share/filebeat/data
+            name: aai-filebeat
+
       volumes:
         - name: localtime
           hostPath:
@@ -130,5 +130,16 @@ spec:
               path: champ-beans.xml
         - name: {{ include "common.fullname" . }}-logs
           emptyDir: {}
+        - name: {{ include "common.fullname" . }}-logback-config
+          configMap:
+            name: {{ include "common.fullname" . }}-log-configmap
+            items:
+            - key: logback.xml
+              path: logback.xml
+        - name: filebeat-conf
+          configMap:
+            name: aai-filebeat
+        - name: aai-filebeat
+          emptyDir: {}
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index c0e2559..dddf156 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 745c73b..eeb27ed 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 78afd41..a6435dd 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -24,7 +25,7 @@ global:
 #################################################################
 
 # application image
-image: onap/champ:1.2.3
+image: onap/champ:1.3-STAGING-latest
 
 # application configuration
 config:
@@ -60,3 +61,11 @@ ingress:
   enabled: false
 
 resources: {}
+
+# XML beans configuration
+event:
+  port:
+    dmaap: 3905
+  protocol: https
+  publisher:
+    topic: champRawEvents
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 59d3c77..1e5b950 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI Data-Router
 name: aai-data-router
index 1b4a6b0..c03870e 100644 (file)
@@ -1,18 +1,18 @@
-{
-       "roles": [
-               {
-                       "name": "admin",
-                       "functions": [
-                               {
-                                       "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]
-                               }
-                       ],
-
-                       "users": [
-                               {
-                                       "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
-                               }
-                       ]
-               }
-       ]
-}
+{\r
+       "roles": [\r
+               {\r
+                       "name": "admin",\r
+                       "functions": [\r
+                               {\r
+                                       "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]\r
+                               }\r
+                       ],\r
+\r
+                       "users": [\r
+                               {\r
+                                       "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"\r
+                               }\r
+                       ]\r
+               }\r
+       ]\r
+}\r
index 9174d2f..d091651 100644 (file)
@@ -1,31 +1,32 @@
-#
-# ============LICENSE_START=======================================================
-# org.onap.aai
-# ================================================================================
-# Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
-# Copyright © 2017-2018 Amdocs
-# ================================================================================
-# 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=========================================================
-#
-
-# Properties for the SchemaLocationsBean
-
-# The AAI Schema jar will be unpacked to bundleconfig/etc
-schemaConfig=NA
-# OXM files named aai_oxm_v*.xml are unpacked here:
-nodeDir=/opt/app/data-router/bundleconfig/etc/oxm
-# DB Edge Rules are unpacked here:
-edgeDir=
-# DB Edge Property files are copied here:
-edgePropsDir=
+#\r
+# ============LICENSE_START=======================================================\r
+# org.onap.aai\r
+# ================================================================================\r
+# Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+# Copyright © 2017-2018 Amdocs\r
+# Modifications Copyright © 2018 Bell Canada\r
+# ================================================================================\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+# ============LICENSE_END=========================================================\r
+#\r
+\r
+# Properties for the SchemaLocationsBean\r
+\r
+# The AAI Schema jar will be unpacked to bundleconfig/etc\r
+schemaConfig=NA\r
+# OXM files named aai_oxm_v*.xml are unpacked here:\r
+nodeDir=/opt/app/data-router/bundleconfig/etc/oxm\r
+# DB Edge Rules are unpacked here:\r
+edgeDir=\r
+# DB Edge Property files are copied here:\r
+edgePropsDir=\r
index 5db9092..acfe0a5 100644 (file)
@@ -1,3 +1,19 @@
+<!--
+# Copyright © 2018 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.
+-->
+
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="
     <property name="searchEndpointDocuments" value = "documents" />
     <property name="searchEntitySearchIndex" value="entity-search-index" />
     <property name="searchTopographySearchIndex" value="topography-search-index" />
-    <property name="searchEntityAutoSuggestIndex" value="entity-autosuggest-index" />
-    <property name="searchAggregationVnfIndex" value="aggregate-vnf-index" />
+    <property name="searchEntityAutoSuggestIndex" value="entityautosuggestindex" />
+    <property name="searchAggregationVnfIndex" value="aggregate_generic-vnf_index" />
     <property name="searchCertName" value="client-cert-onap.p12" />
     <property name="searchKeystorePwd" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
     <property name="searchKeystore" value="tomcat_keystore" />
   </bean>
+  
+  <bean id="consumerBeanEntityEvent" class="org.onap.aai.event.client.DMaaPEventConsumer " >
+    <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:3904" />
+    <constructor-arg name="topic" value="AAI-EVENT" />
+    <constructor-arg name="username" value="" />
+    <constructor-arg name="password" value="" />
+    <constructor-arg name="consumerGroup" value="datarouter" />
+    <constructor-arg name="consumerId" value="datarouter" />
+    <constructor-arg name="timeoutMs" value="1000" />
+    <constructor-arg name="messageLimit" value="100" />
+    <constructor-arg name="transportType" value="HTTPAUTH" />
+  </bean>
 
   <bean id="entityEventPolicy" class="org.onap.aai.datarouter.policy.EntityEventPolicy" init-method="startup" >
     <constructor-arg ref="eepConfig"/>
   </bean>
-</beans>
\ No newline at end of file
+</beans>
index eb93b26..14db6d6 100644 (file)
@@ -1,4 +1,4 @@
-<route xmlns="http://camel.apache.org/schema/spring" trace="true">
-  <from uri="event-bus:mybus/?eventTopic=AAI-EVENT&amp;groupName=datarouter&amp;groupId=datarouter&amp;url=http://message-router.{{.Release.Namespace}}:3904"/>
-  <to uri="bean:entityEventPolicy?method=process"/>
-</route>
+<route xmlns="http://camel.apache.org/schema/spring" trace="true">\r
+  <from uri="event-bus:mybus/?eventTopic=AAI-EVENT&amp;consumer=#consumerBeanEntityEvent" />\r
+  <to uri="bean:entityEventPolicy?method=process"/>\r
+</route>
\ No newline at end of file
index badb53f..9373f41 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: ConfigMap
 metadata:
index a045189..4b58c73 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 69bd3f8..32a3482 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Secret
 metadata:
index 51fc65a..10521ab 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for data-router.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
@@ -7,7 +21,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/data-router:1.2.2
+image: onap/data-router:1.3-STAGING-latest
 pullPolicy: Always
 restartPolicy: Always
 
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 348e4fa..b354ce4 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI elasticsearch
 name: aai-elasticsearch
index 822ae32..3f3c109 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 ##################### Elasticsearch Configuration Example #####################
 
 # This file contains an overview of various configuration settings,
index 991a06a..99bc558 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 40c6210..acb0599 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: extensions/v1beta1
 kind: Deployment
 metadata:
index f3a6dbb..b1de5a7 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index 94357c0..0cb1a36 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for elasticsearch.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 86f3643..b619c70 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 5cc0149..3761781 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 This directory contains all external configuration files that
 need to be mounted into an application container.
 
index d8b065e..7a5007e 100644 (file)
@@ -1,18 +1,18 @@
-{
-  "roles": [
-    {
-      "name": "admin",
-      "functions": [
-        {
-          "name": "crud", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" }, { "name": "PATCH"} ]
-        }
-      ],
-
-      "users": [
-        {
-          "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
-        }
-      ]
-    }
-  ]
+{\r
+  "roles": [\r
+    {\r
+      "name": "admin",\r
+      "functions": [\r
+        {\r
+          "name": "crud", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" }, { "name": "PATCH"} ]\r
+        }\r
+      ],\r
+\r
+      "users": [\r
+        {\r
+          "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"\r
+        }\r
+      ]\r
+    }\r
+  ]\r
 }
\ No newline at end of file
index a86d472..0b7f95f 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 # CRUD-API configuration
 
 crud.async.request.timeout=60000
index 7adc447..48db706 100644 (file)
@@ -1,3 +1,19 @@
+<!--
+# Copyright © 2018 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.
+-->
+
 <beans xmlns="http://www.springframework.org/schema/beans"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:util="http://www.springframework.org/schema/util"
index 9ad559c..d7f0b0a 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index a04d44c..c6bcf57 100644 (file)
@@ -1,3 +1,20 @@
+<!--
+# Copyright © 2018 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.
+-->
+
+
 <configuration scan="true" scanPeriod="3 seconds" debug="false">
   <!--<jmxConfigurator /> -->
   <!-- directory path for all other type logs -->
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v10.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v10.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
index 8d00636..09e19b0 100644 (file)
@@ -1,6 +1,6 @@
-{
-        "contains-other-v": "java.lang.String",
-        "delete-other-v": "java.lang.String",
-        "SVC-INFRA": "java.lang.String",
-        "prevent-delete": "java.lang.String"
+{\r
+        "contains-other-v": "java.lang.String",\r
+        "delete-other-v": "java.lang.String",\r
+        "SVC-INFRA": "java.lang.String",\r
+        "prevent-delete": "java.lang.String"\r
 }
\ No newline at end of file
index 8d00636..09e19b0 100644 (file)
@@ -1,6 +1,6 @@
-{
-        "contains-other-v": "java.lang.String",
-        "delete-other-v": "java.lang.String",
-        "SVC-INFRA": "java.lang.String",
-        "prevent-delete": "java.lang.String"
+{\r
+        "contains-other-v": "java.lang.String",\r
+        "delete-other-v": "java.lang.String",\r
+        "SVC-INFRA": "java.lang.String",\r
+        "prevent-delete": "java.lang.String"\r
 }
\ No newline at end of file
index 8d00636..09e19b0 100644 (file)
@@ -1,6 +1,6 @@
-{
-        "contains-other-v": "java.lang.String",
-        "delete-other-v": "java.lang.String",
-        "SVC-INFRA": "java.lang.String",
-        "prevent-delete": "java.lang.String"
+{\r
+        "contains-other-v": "java.lang.String",\r
+        "delete-other-v": "java.lang.String",\r
+        "SVC-INFRA": "java.lang.String",\r
+        "prevent-delete": "java.lang.String"\r
 }
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v7.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v7.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v8.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v8.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v9.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v9.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
index dfdf3e0..605f7e3 100644 (file)
@@ -1,31 +1,32 @@
-#
-# ============LICENSE_START=======================================================
-# org.onap.aai
-# ================================================================================
-# Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
-# Copyright © 2017-2018 Amdocs
-# ================================================================================
-# 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=========================================================
-#
-
-# Properties for the SchemaLocationsBean
-
-# The AAI Schema jar will be unpacked to bundleconfig/etc
-schemaConfig=NA
-# OXM files named aai_oxm_v*.xml are unpacked here:
-nodeDir=/opt/app/crud-api/bundleconfig/etc/oxm
-# DB Edge Rules are unpacked here:
-edgeDir=/opt/app/crud-api/bundleconfig/etc/dbedgerules
-# DB Edge Property files are copied here:
-edgePropsDir=/opt/app/crud-service/config/model
+#\r
+# ============LICENSE_START=======================================================\r
+# org.onap.aai\r
+# ================================================================================\r
+# Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+# Copyright © 2017-2018 Amdocs\r
+# Modifications Copyright © 2018 Bell Canada\r
+# ================================================================================\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+# ============LICENSE_END=========================================================\r
+#\r
+\r
+# Properties for the SchemaLocationsBean\r
+\r
+# The AAI Schema jar will be unpacked to bundleconfig/etc\r
+schemaConfig=NA\r
+# OXM files named aai_oxm_v*.xml are unpacked here:\r
+nodeDir=/opt/app/crud-api/bundleconfig/etc/oxm\r
+# DB Edge Rules are unpacked here:\r
+edgeDir=/opt/app/crud-api/bundleconfig/etc/dbedgerules\r
+# DB Edge Property files are copied here:\r
+edgePropsDir=/opt/app/crud-service/config/model\r
index 24371d0..1b36fa7 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index b988d31..c9d23c2 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -42,4 +43,4 @@ metadata:
   name: {{ include "common.fullname" . }}-filebeat-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
index c69b3a0..0fb8552 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f5d8ec8..58d5769 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -38,4 +39,4 @@ metadata:
 type: Opaque
 data:
   KEY_STORE_PASSWORD: {{ .Values.config.keyStorePassword | b64enc | quote }}
-  KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
\ No newline at end of file
+  KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
index b48a56c..e78cc73 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index acf6417..50c9d77 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -22,7 +23,7 @@ global:
 #################################################################
 
 # application image
-image: onap/gizmo:1.2.1
+image: onap/gizmo:1.3-STAGING-latest
 
 # application configuration
 config:
similarity index 59%
rename from TOSCA/Helm/k8s_delete_env.sh
rename to kubernetes/aai/charts/aai-graphadmin/Chart.yaml
index c715e22..0b4de7c 100644 (file)
@@ -1,24 +1,23 @@
-#!/bin/bash
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright (c) 2017 AT&T
 #
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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
+#    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============================================
-
-kubectl delete secret $1-docker-registry-key
-kubectl delete clusterrolebinding $1-admin-binding
-kubectl delete namespace $1
-
-
+# ============LICENSE_END=========================================================
 
+apiVersion: v1
+description: ONAP AAI GraphAdmin
+name: aai-graphadmin
+version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/aaiconfig.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/aaiconfig.properties
new file mode 100644 (file)
index 0000000..0aeb2d1
--- /dev/null
@@ -0,0 +1,123 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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=========================================================
+
+aai.config.checktime=1000
+
+# this could come from siteconfig.pl?
+aai.config.nodename=AutomaticallyOverwritten
+
+aai.server.url.base=https://aai.{{ include "common.namespace" . }}:8443/aai/
+aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/{{ .Values.global.config.schema.version.api.default }}/
+aai.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
+
+{{ if .Values.global.config.basic.auth.enabled }}
+aai.tools.enableBasicAuth=true
+aai.tools.username={{ .Values.global.config.basic.auth.username }}
+aai.tools.password={{ .Values.global.config.basic.auth.passwd }}
+{{ end }}
+
+aai.truststore.filename={{ .Values.global.config.truststore.filename }}
+aai.truststore.passwd.x={{ .Values.global.config.truststore.passwd }}
+aai.keystore.filename={{ .Values.global.config.keystore.filename }}
+aai.keystore.passwd.x={{ .Values.global.config.keystore.passwd }}
+
+aai.notification.current.version={{ .Values.global.config.schema.version.api.default }}
+aai.notificationEvent.default.status=UNPROCESSED
+aai.notificationEvent.default.eventType={{ .Values.global.config.notification.eventType }}
+aai.notificationEvent.default.domain={{ .Values.global.config.notification.domain }}
+aai.notificationEvent.default.sourceName=aai
+aai.notificationEvent.default.sequenceNumber=0
+aai.notificationEvent.default.severity=NORMAL
+aai.notificationEvent.default.version={{ .Values.global.config.schema.version.api.default }}
+# This one lets us enable/disable resource-version checking on updates/deletes
+aai.resourceversion.enableflag=true
+aai.logging.maxStackTraceEntries=10
+aai.default.api.version={{ .Values.global.config.schema.version.api.default }}
+
+# Used by Data Grooming
+aai.grooming.default.max.fix={{ .Values.config.maxFix.dataGrooming | int }}
+aai.grooming.default.sleep.minutes={{ .Values.config.sleepMinutes.dataGrooming | int }}
+
+# Used by DupeTool
+aai.dupeTool.default.max.fix={{ .Values.config.maxFix.dupeTool | int }}
+aai.dupeTool.default.sleep.minutes={{ .Values.config.sleepMinutes.dupeTool | int }}
+
+
+aai.model.proc.max.levels=50
+aai.edgeTag.proc.max.levels=50
+
+# Used by the ForceDelete tool
+aai.forceDel.protected.nt.list=cloud-region
+aai.forceDel.protected.edge.count=10
+aai.forceDel.protected.descendant.count=10
+
+#used by the dataGrooming and dataSnapshot cleanup tasks
+aai.cron.enable.datagroomingcleanup={{ .Values.config.cron.dataCleanup.dataGrooming.enabled }}
+aai.cron.enable.datasnapshotcleanup={{ .Values.config.cron.dataCleanup.dataSnapshot.enabled }}
+aai.datagrooming.agezip={{ .Values.config.cron.dataCleanup.dataGrooming.ageZip | int }}
+aai.datagrooming.agedelete={{ .Values.config.cron.dataCleanup.dataGrooming.ageDelete | int  }}
+
+aai.datasnapshot.agezip={{ .Values.config.cron.dataCleanup.dataSnapshot.ageZip | int }}
+aai.datasnapshot.agedelete={{ .Values.config.cron.dataCleanup.dataSnapshot.ageDelete | int }}
+
+#used by the dataSnapshot and dataGrooming tasks
+aai.cron.enable.dataSnapshot={{ .Values.config.cron.dataSnapshot.enabled }}
+
+aai.cron.enable.dataGrooming={{ .Values.config.cron.dataGrooming.enabled }}
+
+#used by the dataGrooming tasks
+aai.datagrooming.enableautofix=true
+aai.datagrooming.enabledupefixon=true
+aai.datagrooming.enabledontfixorphans=true
+aai.datagrooming.enabletimewindowminutes=true
+aai.datagrooming.enableskiphostcheck=false
+aai.datagrooming.enablesleepminutes=false
+aai.datagrooming.enableedgesonly=false
+aai.datagrooming.enableskipedgechecks=false
+aai.datagrooming.enablemaxfix=false
+aai.datagrooming.enablesinglecommits=false
+aai.datagrooming.enabledupecheckoff=false
+aai.datagrooming.enableghost2checkoff=false
+aai.datagrooming.enableghost2fixon=false
+aai.datagrooming.enablef=false
+
+# used by the dataGrooming to set values
+aai.datagrooming.timewindowminutesvalue=10500
+aai.datagrooming.sleepminutesvalue=100
+aai.datagrooming.maxfixvalue=10
+aai.datagrooming.fvalue=10
+
+#timeout for traversal enabled flag
+aai.graphadmin.timeoutenabled={{ .Values.config.timeout.enabled }}
+#default timeout limit added for graphadmin if not overridden (in ms)
+aai.graphadmin.timeoutlimit={{ .Values.config.timeout.limit }}
+
+#timeout app specific -1 to bypass for that app id, a whole number to override the timeout with that value (in ms)
+aai.graphadmin.timeout.appspecific={{ .Values.global.config.realtime.clients }}
+
+# Disable the process check which are oriented towards linux OS
+# These props should only be true for local on windows
+aai.disable.check.snapshot.running=false
+aai.disable.check.grooming.running=false
+
+# Specify the params listed right here that you would have send to the dataSnapshot shell script
+# JUST_TAKE_SNAPSHOT
+# THREADED_SNAPSHOT 2 DEBUG
+# THREADED_SNAPSHOT 2
+aai.datasnapshot.params={{ .Values.config.cron.dataSnapshot.params }}
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/application.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/application.properties
new file mode 100644 (file)
index 0000000..104cf76
--- /dev/null
@@ -0,0 +1,87 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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=========================================================
+
+# The following info parameters are being referenced by ajsc6
+info.build.artifact=aai-graphadmin
+info.build.name=resources
+info.build.description=Resources Microservice
+info.build.version=1.2.0
+
+spring.application.name=aai-graphadmin
+spring.jersey.type=filter
+
+server.contextPath=/
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+spring.profiles.active={{ .Values.global.config.profiles.active }}
+spring.jersey.application-path=${schema.uri.base.path}
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+# If you get an application startup failure that the port is already taken
+# If thats not it, please check if the key-store file path makes sense
+server.local.startpath=aai-graphadmin/src/main/resources/
+server.basic.auth.location=${server.local.startpath}etc/auth/realm.properties
+
+server.port=8449
+server.ssl.enabled-protocols=TLSv1.1,TLSv1.2
+server.ssl.key-store=${server.local.startpath}etc/auth/{{ .Values.global.config.keystore.filename }}
+server.ssl.key-store-password=password({{ .Values.global.config.keystore.passwd }})
+server.ssl.trust-store=${server.local.startpath}etc/auth/{{ .Values.global.config.truststore.filename }}
+server.ssl.trust-store-password=password({{ .Values.global.config.truststore.passwd }})
+server.ssl.client-auth=want
+server.ssl.key-store-type=JKS
+
+# JMS bind address host port
+jms.bind.address=tcp://localhost:61649
+dmaap.ribbon.listOfServers=message-router.{{.Release.Namespace}}:3904
+
+# Schema related attributes for the oxm and edges
+# Any additional schema related attributes should start with prefix schema
+schema.configuration.location=N/A
+schema.source.name={{ .Values.global.config.schema.source.name }}
+schema.nodes.location=${server.local.startpath}/schema/${schema.source.name}/oxm/
+schema.edges.location=${server.local.startpath}/schema/${schema.source.name}/dbedgerules/
+
+schema.ingest.file=${server.local.startpath}/application.properties
+
+# Schema Version Related Attributes
+
+schema.uri.base.path={{ .Values.global.config.schema.uri.base.path }}
+# Lists all of the versions in the schema
+schema.version.list={{ .Values.global.config.schema.version.list }}
+# Specifies from which version should the depth parameter to default to zero
+schema.version.depth.start={{ .Values.global.config.schema.version.depth }}
+# Specifies from which version should the related link be displayed in response payload
+schema.version.related.link.start={{ .Values.global.config.schema.version.related.link }}
+
+# Specifies from which version should the client see only the uri excluding host info
+# Before this version server base will also be included
+schema.version.app.root.start={{ .Values.global.config.schema.version.app.root }}
+# Specifies from which version should the namespace be changed
+schema.version.namespace.change.start={{ .Values.global.config.schema.version.namespace.change }}
+# Specifies from which version should the client start seeing the edge label in payload
+schema.version.edge.label.start={{ .Values.global.config.schema.version.edge.label }}
+# Specifies the version that the application should default to
+schema.version.api.default={{ .Values.global.config.schema.version.api.default }}
+
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties
new file mode 100644 (file)
index 0000000..6a28dee
--- /dev/null
@@ -0,0 +1,99 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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=========================================================
+
+query.fast-property=true
+query.smart-limit=false
+
+{{ if .Values.global.config.cluster.cassandra.dynamic }}
+
+{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+{{- $global := . }}
+
+storage.backend=cassandra
+storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+
+storage.cassandra.keyspace=aaigraph
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+
+{{ else }}
+
+{{ if .Values.global.config.storage }}
+
+storage.backend={{ .Values.global.config.storage.backend }}
+
+{{ if eq .Values.global.config.storage.backend "cassandra" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cassandra.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cassandra.read-consistency-level={{ .Values.global.config.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.config.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.config.storage.cassandra.replicationFactor | int }}
+storage.cassandra.astyanax.cluster-name= {{ .Values.global.config.storage.clusterName }}
+storage.cassandra.astyanax.local-datacenter= {{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "cql" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cql.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cql.read-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.config.storage.cql.replicationFactor | int }}
+
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.config.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.config.storage.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "hbase" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.hbase.table={{ .Values.global.config.storage.name }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ end }}
+
+{{ end }}
+
+{{ end }}
+
+storage.lock.wait-time=300
+#caching on
+cache.db-cache = true
+cache.db-cache-clean-wait = 20
+cache.db-cache-time = 180000
+cache.db-cache-size = 0.3
+
+#load graphson file on startup
+load.snapshot.file=false
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties
new file mode 100644 (file)
index 0000000..7832d1a
--- /dev/null
@@ -0,0 +1,93 @@
+#
+# ============LICENSE_START=======================================================
+# Copyright © 2018 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=========================================================
+
+query.fast-property=true
+query.smart-limit=false
+
+{{ if .Values.global.config.cluster.cassandra.dynamic }}
+
+{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
+{{- $global := . }}
+
+storage.backend=cassandra
+storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+
+storage.cassandra.keyspace=aaigraph
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+
+{{ else }}
+
+{{ if .Values.global.config.storage }}
+
+storage.backend={{ .Values.global.config.storage.backend }}
+
+{{ if eq .Values.global.config.storage.backend "cassandra" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cassandra.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cassandra.read-consistency-level={{ .Values.global.config.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.config.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.config.storage.cassandra.replicationFactor | int }}
+storage.cassandra.astyanax.cluster-name= {{ .Values.global.config.storage.clusterName }}
+storage.cassandra.astyanax.local-datacenter= {{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "cql" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cql.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cql.read-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.config.storage.cql.replicationFactor | int }}
+
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.config.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.config.storage.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "hbase" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.hbase.table={{ .Values.global.config.storage.name }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ end }}
+
+{{ end }}
+
+{{ end }}
+
+storage.lock.wait-time=300
+# Setting db-cache to false ensure the fastest propagation of changes across servers
+cache.db-cache = false
+#load graphson file on startup
+load.snapshot.file=false
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/localhost-access-logback.xml b/kubernetes/aai/charts/aai-graphadmin/resources/config/localhost-access-logback.xml
new file mode 100644 (file)
index 0000000..95d4123
--- /dev/null
@@ -0,0 +1,60 @@
+<!--
+
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright © 2018 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>
+       <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+       <appender name="ACCESS"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">
+                       <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>
+               </encoder>
+       </appender>
+       <appender-ref ref="ACCESS" />
+</configuration>
+
+<!-- 
+%a - Remote IP address
+%A - Local IP address
+%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent
+%B - Bytes sent, excluding HTTP headers
+%h - Remote host name
+%H - Request protocol
+%l - Remote logical username from identd (always returns '-')
+%m - Request method
+%p - Local port
+%q - Query string (prepended with a '?' if it exists, otherwise an empty string
+%r - First line of the request
+%s - HTTP status code of the response
+%S - User session ID
+%t - Date and time, in Common Log Format format
+%u - Remote user that was authenticated
+%U - Requested URL path
+%v - Local server name
+%I - current request thread name (can compare later with stacktraces)
+
+%z - Custom pattern that parses the cert for the subject
+%y - Custom pattern determines rest or dme2
+ -->
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/logback.xml b/kubernetes/aai/charts/aai-graphadmin/resources/config/logback.xml
new file mode 100644 (file)
index 0000000..787fc64
--- /dev/null
@@ -0,0 +1,708 @@
+<!--
+
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright 2018 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="60 seconds" debug="false">
+       <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
+
+       <property resource="application.properties" />
+
+       <property name="namespace" value="graph-admin"/>
+
+       <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+       
+       <property name="logDirectory" value="${AJSC_HOME}/logs" />
+       <property name="eelfLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+       <property name="eelfAuditLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+       <property name="eelfMetricLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{targetVirtualEntity}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+       <!--  <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> -->
+       <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%ecompResponseCode|%ecompResponseDescription|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
+    <property name="eelfTransLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{partnerName}:%m%n"/>
+       
+    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
+    <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
+    <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
+       <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+               <encoder>
+                       <pattern>
+                               %clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
+                       </pattern>
+               </encoder>
+       </appender>
+
+       <appender name="SANE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <file>${logDirectory}/rest/sane.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/rest/sane.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder>
+                       <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+                       </pattern>
+               </encoder>
+       </appender>
+
+       <appender name="asyncSANE" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <includeCallerData>true</includeCallerData>
+               <appender-ref ref="SANE" />
+       </appender>
+
+       <appender name="METRIC"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <file>${logDirectory}/rest/metrics.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/rest/metrics.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       <appender name="asyncMETRIC" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <includeCallerData>true</includeCallerData>
+               <appender-ref ref="METRIC" />
+       </appender>
+
+       <appender name="DEBUG"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <file>${logDirectory}/rest/debug.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/rest/debug.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="asyncDEBUG" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <includeCallerData>true</includeCallerData>
+               <appender-ref ref="DEBUG" />
+       </appender>
+
+       <appender name="ERROR"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <file>${logDirectory}/rest/error.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/rest/error.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${"eelfErrorLogPattern"}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="asyncERROR" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <includeCallerData>true</includeCallerData>
+               <appender-ref ref="ERROR" />
+       </appender>
+
+       <appender name="AUDIT"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <file>${logDirectory}/rest/audit.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/rest/audit.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfAuditLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="asyncAUDIT" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <includeCallerData>true</includeCallerData>
+               <appender-ref ref="AUDIT" />
+       </appender>
+
+       <appender name="translog"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <file>${logDirectory}/rest/translog.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/rest/translog.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfTransLogPattern}</pattern>
+               </encoder>
+       </appender>
+       
+       <appender name="asynctranslog" class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>1000</queueSize>
+               <includeCallerData>true</includeCallerData>
+               <appender-ref ref="translog" />
+       </appender>
+
+       <appender name="dmaapAAIEventConsumer"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/dmaapAAIEventConsumer/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/error.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${"eelfErrorLogPattern"}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dmaapAAIEventConsumerDebug"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dmaapAAIEventConsumer/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/debug.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+       <appender name="dmaapAAIEventConsumerMetric"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dmaapAAIEventConsumer/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/metrics.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       <appender name="external"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <file>${logDirectory}/external/external.log</file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/external/external.log.%d{yyyy-MM-dd}
+                       </fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+       
+       <!-- DataGrooming logs started -->
+       <appender name="dataGrooming" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/dataGrooming/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataGrooming/error.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfErrorLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataGroomingdebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dataGrooming/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataGrooming/debug.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataGroomingmetric" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dataGrooming/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataGrooming/metrics.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       
+       <!-- DataGrooming logs ended -->
+       
+       <!-- DataSnapshot logs started -->
+       <appender name="dataSnapshot" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/dataSnapshot/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataSnapshot/error.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfErrorLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataSnapshotdebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dataSnapshot/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataSnapshot/debug.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataSnapshotmetric" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dataSnapshot/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataSnapshot/metrics.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       
+       <!-- DataSnapshot logs ended -->
+       
+       <!-- CreateDBSchema logs started  -->
+       <appender name="createDBSchema" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/createDBSchema/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/createDBSchema/error.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${"eelfErrorLogPattern"}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="createDBSchemadebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/createDBSchema/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/createDBSchema/debug.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="createDBSchemametric" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/createDBSchema/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/createDBSchema/metrics.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       <!-- CreateDBSchema logs ended  -->     
+       
+       <!-- DataCleanupTasks logs started  -->
+       <appender name="dataCleanuperror" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/misc/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/misc/error.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${"eelfErrorLogPattern"}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataCleanupdebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/misc/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/misc/debug.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataCleanupmetric" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/misc/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/misc/metrics.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       <!-- DataCleanupTasks logs ended  -->   
+                       
+       <!-- pullInvData logs started -->
+       <appender name="pullInvData" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/pullInvData/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/pullInvData/error.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${"eelfErrorLogPattern"}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="pullInvDatadebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/pullInvData/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/pullInvData/debug.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="pullInvDatametric" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/pullInvData/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/pullInvData/metrics.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       <!-- pullInvData logs ended -->
+                               <!-- DataGrooming logs started -->
+       <appender name="dataExportError" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                       <level>WARN</level>
+               </filter>
+               <File>${logDirectory}/dataExport/error.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataExport/error.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfErrorLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataExportDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>DEBUG</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dataExport/debug.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataExport/debug.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfLogPattern}</pattern>
+               </encoder>
+       </appender>
+
+       <appender name="dataExportMetric" class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+                       <level>INFO</level>
+                       <onMatch>ACCEPT</onMatch>
+                       <onMismatch>DENY</onMismatch>
+               </filter>
+               <File>${logDirectory}/dataExport/metrics.log</File>
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                       <fileNamePattern>${logDirectory}/dataExport/metrics.log.%d{yyyy-MM-dd}</fileNamePattern>
+               </rollingPolicy>
+               <encoder class="org.onap.aai.logging.EcompEncoder">
+                       <pattern>${eelfMetricLogPattern}</pattern>
+               </encoder>
+       </appender>
+       
+       <logger name="org.onap.aai" level="DEBUG" additivity="false">
+               <appender-ref ref="asyncDEBUG" />
+               <appender-ref ref="asyncERROR" />
+               <appender-ref ref="asyncMETRIC" />
+               <appender-ref ref="asyncSANE" />
+       </logger>
+
+       <!-- Spring related loggers -->
+       <logger name="org.springframework" level="WARN" />
+       <logger name="org.springframework.beans" level="WARN" />
+       <logger name="org.springframework.web" level="WARN" />
+       <logger name="com.blog.spring.jms" level="WARN" />
+       <logger name="com.jayway.jsonpath" level="WARN" />
+
+       <!-- AJSC Services (bootstrap services) -->
+       <logger name="ajsc" level="WARN" />
+       <logger name="ajsc.RouteMgmtService" level="WARN" />
+       <logger name="ajsc.ComputeService" level="WARN" />
+       <logger name="ajsc.VandelayService" level="WARN" />
+       <logger name="ajsc.FilePersistenceService" level="WARN" />
+       <logger name="ajsc.UserDefinedJarService" level="WARN" />
+       <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
+       <logger name="ajsc.LoggingConfigurationService" level="WARN" />
+
+       <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet 
+               logging) -->
+       <logger name="org.codehaus.groovy" level="WARN" />
+       <logger name="com.att.scamper" level="WARN" />
+       <logger name="ajsc.utils" level="WARN" />
+       <logger name="ajsc.utils.DME2Helper" level="WARN" />
+       <logger name="ajsc.filters" level="WARN" />
+       <logger name="ajsc.beans.interceptors" level="WARN" />
+       <logger name="ajsc.restlet" level="WARN" />
+       <logger name="ajsc.servlet" level="WARN" />
+       <logger name="com.att.ajsc" level="WARN" />
+       <logger name="com.att.ajsc.csi.logging" level="WARN" />
+       <logger name="com.att.ajsc.filemonitor" level="WARN" />
+       <logger name="com.netflix.loadbalancer" level="WARN" />
+
+       <logger name="org.apache.zookeeper" level="WARN" />
+
+       <!-- Other Loggers that may help troubleshoot -->
+       <logger name="net.sf" level="WARN" />
+       <logger name="org.apache.commons.httpclient" level="WARN" />
+       <logger name="org.apache.commons" level="WARN" />
+       <logger name="org.apache.coyote" level="WARN" />
+       <logger name="org.apache.jasper" level="WARN" />
+
+       <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. 
+               May aid in troubleshooting) -->
+       <logger name="org.apache.camel" level="WARN" />
+       <logger name="org.apache.cxf" level="WARN" />
+       <logger name="org.apache.camel.processor.interceptor" level="WARN" />
+       <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
+       <logger name="org.apache.cxf.service" level="WARN" />
+       <logger name="org.restlet" level="WARN" />
+       <logger name="org.apache.camel.component.restlet" level="WARN" />
+
+       <logger name="org.hibernate.validator" level="WARN" />
+       <logger name="org.hibernate" level="WARN" />
+       <logger name="org.hibernate.ejb" level="OFF" />
+
+       <!-- logback internals logging -->
+       <logger name="ch.qos.logback.classic" level="WARN" />
+       <logger name="ch.qos.logback.core" level="WARN" />
+
+       <logger name="org.eclipse.jetty" level="WARN" />
+
+       <!-- logback jms appenders & loggers definition starts here -->
+       <appender name="auditLogs"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
+               <file>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.log
+               </file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <fileNamePattern>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.%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>eelfAuditLogPattern</pattern>
+               </encoder>
+       </appender>
+       <appender name="perfLogs"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
+               <file>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.log
+               </file>
+               <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <fileNamePattern>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+       <logger name="AuditRecord" level="INFO" additivity="false">
+               <appender-ref ref="auditLogs" />
+       </logger>
+       <logger name="AuditRecord_DirectCall" level="INFO" additivity="false">
+               <appender-ref ref="auditLogs" />
+       </logger>
+       <logger name="PerfTrackerRecord" level="INFO" additivity="false">
+               <appender-ref ref="perfLogs" />
+       </logger>
+       <!-- logback jms appenders & loggers definition ends here -->
+
+       <logger name="org.onap.aai.interceptors.post" level="DEBUG"
+                       additivity="false">
+               <appender-ref ref="asynctranslog" />
+       </logger>
+
+       <logger name="org.onap.aai.interceptors.pre.SetLoggingContext" level="DEBUG">
+               <appender-ref ref="asyncAUDIT"/>
+       </logger>
+
+       <logger name="org.onap.aai.interceptors.post.ResetLoggingContext" level="DEBUG">
+               <appender-ref ref="asyncAUDIT"/>
+       </logger>
+
+       <logger name="org.onap.aai.dmaap" level="DEBUG" additivity="false">
+               <appender-ref ref="dmaapAAIEventConsumer" />
+               <appender-ref ref="dmaapAAIEventConsumerDebug" />
+               <appender-ref ref="dmaapAAIEventConsumerMetric" />
+       </logger>
+
+       <logger name="org.onap.aai.datasnapshot" level="DEBUG" additivity="false">
+               <appender-ref ref="dataSnapshot"/>
+               <appender-ref ref="dataSnapshotdebug"/>
+               <appender-ref ref="dataSnapshotmetric"/>
+               <appender-ref ref="STDOUT"/>
+       </logger>
+
+       <logger name="org.onap.aai.datagrooming" level="DEBUG" additivity="false">
+               <appender-ref ref="dataGrooming"/>
+               <appender-ref ref="dataGroomingdebug"/>
+               <appender-ref ref="dataGroomingmetric"/>
+               <appender-ref ref="STDOUT"/>
+       </logger>
+
+       <logger name="org.onap.aai.schema" level="DEBUG" additivity="false">
+               <appender-ref ref="createDBSchema"/>
+               <appender-ref ref="createDBSchemadebug"/>
+               <appender-ref ref="createDBSchemametric"/>
+       </logger>
+
+       <logger name="org.onap.aai.dbgen" level="DEBUG" additivity="false">
+               <appender-ref ref="createDBSchema"/>
+               <appender-ref ref="createDBSchemadebug"/>
+               <appender-ref ref="createDBSchemametric"/>
+       </logger>
+
+       <logger name="org.onap.aai.dbgen.PullInvData" level="DEBUG" additivity="false">
+               <appender-ref ref="pullInvData"/>
+               <appender-ref ref="pullInvDatadebug"/>
+               <appender-ref ref="pullInvDatametric"/>
+       </logger>
+       
+       <logger name="org.onap.aai.datacleanup" level="INFO" additivity="false">
+       <appender-ref ref="dataCleanuperror" />
+       <appender-ref ref="dataCleanupdebug" />
+       <appender-ref ref="dataCleanupmetric" />
+       <appender-ref ref="STDOUT"/>
+       </logger>
+       <logger name="org.onap.aai.dataexport" level="DEBUG" additivity="false">
+               <appender-ref ref="dataExportError"/>
+               <appender-ref ref="dataExportDebug"/>
+               <appender-ref ref="dataExportMetric"/>
+               <appender-ref ref="STDOUT"/>
+       </logger>
+       <logger name="org.apache" level="WARN" />
+       <logger name="org.zookeeper" level="WARN" />
+       <logger name="com.netflix" level="WARN" />
+       <logger name="org.janusgraph" level="WARN" />
+       <logger name="com.att.aft.dme2" level="WARN" />
+
+       <!-- ============================================================================ -->
+       <!-- General EELF logger -->
+       <!-- ============================================================================ -->
+       <logger name="com.att.eelf" level="WARN" additivity="false">
+               <appender-ref ref="asyncDEBUG" />
+               <appender-ref ref="asyncERROR" />
+               <appender-ref ref="asyncMETRIC" />
+       </logger>
+
+       <root level="DEBUG">
+               <appender-ref ref="external" />
+               {{ if .Values.global.config.logback.console.enabled }}
+               <appender-ref ref="STDOUT" />
+               {{ end }}
+       </root>
+</configuration>
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/realm.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/realm.properties
new file mode 100644 (file)
index 0000000..f401b8a
--- /dev/null
@@ -0,0 +1,32 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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=========================================================
+
+# format : username: password[,rolename ...]
+# default username/password: AAI/AAI, MSO/MSO, ModelLoader/ModelLoader...
+AAI:OBF:1gfr1ev31gg7,admin
+MSO:OBF:1jzx1lz31k01,admin
+SDNC:OBF:1itr1i0l1i151isv,admin
+DCAE:OBF:1g8u1f9d1f991g8w,admin
+POLICY:OBF:1mk61i171ima1im41i0j1mko,admin
+ASDC:OBF:1f991j0u1j001f9d,admin
+VID:OBF:1jm91i0v1jl9,admin
+APPC:OBF:1f991ksf1ksf1f9d,admin
+ModelLoader:OBF:1qvu1v2h1sov1sar1wfw1j7j1wg21saj1sov1v1x1qxw,admin
+AaiUI:OBF:1gfr1p571unz1p4j1gg7,admin
+OOF:OBF:1img1ke71ily,admin
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..1fe9e5c
--- /dev/null
@@ -0,0 +1,74 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-log
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/localhost-access-logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-db-real-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/janusgraph-realtime.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-db-cached-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/janusgraph-cached.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-aaiconfig-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/aaiconfig.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-springapp-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-realm-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..9b0ec63
--- /dev/null
@@ -0,0 +1,191 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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: {{ .Values.replicaCount }}
+  selector:
+    matchLabels:
+      app: {{ include "common.name" . }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+      name: {{ include "common.name" . }}
+      annotations:
+        checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
+    spec:
+      hostname: aai-graphadmin
+    {{ if .Values.global.initContainers.enabled }}
+      initContainers:
+      - command:
+      {{  if .Values.global.jobs.createSchema.enabled  }}
+        - /root/job_complete.py
+        args:
+        - --job-name
+        - {{ .Release.Name }}-aai-graphadmin-create-db-schema
+      {{  else }}
+        - /root/ready.py
+        args:
+        - --container-name
+        - aai-cassandra
+      {{  end  }}
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      {{  end  }}
+      containers:
+      - name: {{ include "common.name" . }}
+        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        env:
+        - name: LOCAL_USER_ID
+          value: {{ .Values.config.userId | quote }}
+        - name: LOCAL_GROUP_ID
+          value: {{ .Values.config.groupId | quote }}
+        volumeMounts:
+        - mountPath: /etc/localtime
+          name: localtime
+          readOnly: true
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
+          name: {{ include "common.fullname" . }}-db-real-conf
+          subPath: janusgraph-realtime.properties
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
+          name: {{ include "common.fullname" . }}-db-cached-conf
+          subPath: janusgraph-cached.properties
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
+          name: {{ include "common.fullname" . }}-aaiconfig-conf
+          subPath: aaiconfig.properties
+        - mountPath: /opt/aai/logroot/AAI-RES
+          name: {{ include "common.fullname" . }}-logs
+        - mountPath: /opt/app/aai-graphadmin/resources/logback.xml
+          name: {{ include "common.fullname" . }}-log-conf
+          subPath: logback.xml
+        - mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
+          name: {{ include "common.fullname" . }}-localhost-access-log-conf
+          subPath: localhost-access-logback.xml
+        - mountPath: /opt/app/aai-graphadmin/resources/application.properties
+          name: {{ include "common.fullname" . }}-springapp-conf
+          subPath: application.properties
+          {{ $global := . }}
+          {{ range $job := .Values.global.config.auth.files }}
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/auth/{{ . }}
+          name: {{ include "common.fullname" $global }}-auth-truststore-sec
+          subPath: {{ . }}
+          {{ end }}
+        ports:
+        - containerPort: {{ .Values.service.internalPort }}
+        - containerPort: {{ .Values.service.internalPort2 }}
+        # disable liveness probe when breakpoints set in debugger
+        # so K8s doesn't restart unresponsive container
+        {{ 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 }}
+        resources:
+{{ toYaml .Values.resources | indent 10 }}
+      {{- if .Values.nodeSelector }}
+      nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+      {{- end -}}
+      {{- if .Values.affinity }}
+      affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+      {{- end }}
+
+      # side car containers
+      - name: filebeat-onap
+        image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        volumeMounts:
+        - mountPath: /usr/share/filebeat/filebeat.yml
+          subPath: filebeat.yml
+          name: filebeat-conf
+        - mountPath: /var/log/onap
+          name: {{ include "common.fullname" . }}-logs
+        - mountPath: /usr/share/filebeat/data
+          name: {{ include "common.fullname" . }}-filebeat
+
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: filebeat-conf
+        configMap:
+          name: aai-filebeat
+      - name: {{ include "common.fullname" . }}-logs
+        emptyDir: {}
+      - name: {{ include "common.fullname" . }}-filebeat
+        emptyDir: {}
+      - name: {{ include "common.fullname" . }}-log-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-log
+      - name: {{ include "common.fullname" . }}-localhost-access-log-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+      - name: {{ include "common.fullname" . }}-db-real-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-db-real-configmap
+      - name: {{ include "common.fullname" . }}-db-cached-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-db-cached-configmap
+      - name: {{ include "common.fullname" . }}-aaiconfig-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-aaiconfig-configmap
+      - name: {{ include "common.fullname" . }}-springapp-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-springapp-configmap
+      - name: {{ include "common.fullname" . }}-realm-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-realm-configmap
+      - name: {{ include "common.fullname" . }}-auth-truststore-sec
+        secret:
+         secretName: aai-auth-truststore-secret
+         items:
+          {{ range $job := .Values.global.config.auth.files }}
+           - key: {{ . }}
+             path: {{ . }}
+          {{ end }}
+      restartPolicy: {{ .Values.restartPolicy }}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/job.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/job.yaml
new file mode 100644 (file)
index 0000000..0a8ed5c
--- /dev/null
@@ -0,0 +1,166 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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=========================================================
+
+# In ONAP, the following job will always be run on each installation
+# The following job will go through the latest oxm and
+# create properties based on the data type defined in the oxm
+# and create the required indexes for the appropriate properties
+# This can be run multiple times as the code if the index or property already exists
+# then the index or property won't be created again
+# NOTE - During the execution of the createSchema job, there should
+# be no other janusgraph connection to the graph as its the reason
+# that resources traversal and graphadmin wait until this job is done
+# If you are using an existing cassandra cluster not coming from oom
+# then it is your job to ensure that there are no connections to the database
+
+{{ if .Values.global.jobs.createSchema.enabled }}
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: {{ include "common.fullname" . }}-create-db-schema
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}-job
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  backoffLimit: 20
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}-job
+        release: {{ .Release.Name }}
+      name: {{ include "common.name" . }}
+      annotations:
+        checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
+    spec:
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - aai-cassandra
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      containers:
+      - name: {{ include "common.name" . }}
+        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        command:
+        - /bin/bash
+        - docker-entrypoint.sh
+        - createDBSchema.sh
+        env:
+        - name: LOCAL_USER_ID
+          value: {{ .Values.global.config.userId | quote }}
+        - name: LOCAL_GROUP_ID
+          value: {{ .Values.global.config.groupId | quote }}
+        volumeMounts:
+        - mountPath: /etc/localtime
+          name: localtime
+          readOnly: true
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
+          name: {{ include "common.fullname" . }}-db-real-conf
+          subPath: janusgraph-realtime.properties
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
+          name: {{ include "common.fullname" . }}-db-cached-conf
+          subPath: janusgraph-cached.properties
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
+          name: {{ include "common.fullname" . }}-aaiconfig-conf
+          subPath: aaiconfig.properties
+        - mountPath: /opt/aai/logroot/AAI-RES
+          name: {{ include "common.fullname" . }}-logs
+        - mountPath: /opt/app/aai-graphadmin/resources/logback.xml
+          name: {{ include "common.fullname" . }}-log-conf
+          subPath: logback.xml
+        - mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
+          name: {{ include "common.fullname" . }}-localhost-access-log-conf
+          subPath: localhost-access-logback.xml
+        - mountPath: /opt/app/aai-graphadmin/resources/application.properties
+          name: {{ include "common.fullname" . }}-springapp-conf
+          subPath: application.properties
+          {{ $global := . }}
+          {{ range $job := .Values.global.config.auth.files }}
+        - mountPath: /opt/app/aai-graphadmin/resources/etc/auth/{{ . }}
+          name: {{ include "common.fullname" $global }}-auth-truststore-sec
+          subPath: {{ . }}
+          {{ end }}
+        resources:
+{{ toYaml .Values.resources | indent 10 }}
+      {{- if .Values.nodeSelector }}
+      nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+      {{- end -}}
+      {{- if .Values.affinity }}
+      affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+      {{- end }}
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: filebeat-conf
+        configMap:
+          name: aai-filebeat
+      - name: {{ include "common.fullname" . }}-logs
+        emptyDir: {}
+      - name: {{ include "common.fullname" . }}-filebeat
+        emptyDir: {}
+      - name: {{ include "common.fullname" . }}-log-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-log
+      - name: {{ include "common.fullname" . }}-localhost-access-log-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-localhost-access-log-configmap
+      - name: {{ include "common.fullname" . }}-db-real-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-db-real-configmap
+      - name: {{ include "common.fullname" . }}-db-cached-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-db-cached-configmap
+      - name: {{ include "common.fullname" . }}-aaiconfig-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-aaiconfig-configmap
+      - name: {{ include "common.fullname" . }}-springapp-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-springapp-configmap
+      - name: {{ include "common.fullname" . }}-realm-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-realm-configmap
+      - name: {{ include "common.fullname" . }}-auth-truststore-sec
+        secret:
+         secretName: aai-auth-truststore-secret
+         items:
+          {{ range $job := .Values.global.config.auth.files }}
+           - key: {{ . }}
+             path: {{ . }}
+          {{ end }}
+      restartPolicy: Never
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
+{{ end }}
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/service.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/service.yaml
new file mode 100644 (file)
index 0000000..f4d9ba5
--- /dev/null
@@ -0,0 +1,49 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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.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.internalPort }}
+    name: {{ .Values.service.portName }}
+  - port: {{ .Values.service.internalPort2 }}
+    name: {{ .Values.service.portName2 }}
+  {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
+  clusterIP: None
diff --git a/kubernetes/aai/charts/aai-graphadmin/values.yaml b/kubernetes/aai/charts/aai-graphadmin/values.yaml
new file mode 100644 (file)
index 0000000..6b7997f
--- /dev/null
@@ -0,0 +1,127 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 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=========================================================
+
+# Default values for resources.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+  nodePortPrefix: 302
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.0
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aai-graphadmin:1.0-STAGING-latest
+pullPolicy: Always
+restartPolicy: Always
+
+# default number of instances
+replicaCount: 1
+
+# Configuration for the graphadmin deployment
+config:
+
+  # Specifies the timeout limit for the REST API requests
+  timeout:
+    enabled: true
+    limit: 180000
+
+  # Default maximum records to fix for the data grooming and dupeTool
+  maxFix: 
+    dataGrooming: 150
+    dupeTool: 25
+    
+  # Default number of sleep minutes for dataGrooming and dupeTool
+  sleepMinutes:
+    dataGrooming: 7
+    dupeTool: 7
+
+  # Cron specific attributes to be triggered for the graphadmin spring cron tasks
+  cron:
+    # Specifies that the data grooming tool which runs duplicates should be enabled
+    dataGrooming:
+      enabled: true
+    # Specifies that the data snapshot which takes a graphson snapshot should be enabled
+    dataSnapshot:
+      enabled: true
+      params: JUST_TAKE_SNAPSHOT
+
+    # Data cleanup which zips snapshots older than x days and deletes older than y days
+    dataCleanup:
+
+      dataGrooming:
+        enabled: true
+        # Zips up the dataGrooming files older than 5 days
+        ageZip: 5
+        # Deletes the dataGrooming files older than 30 days
+        ageDelete: 30
+
+      dataSnapshot:
+        enabled: true
+        # Zips up the dataSnapshot graphson files older than 5 days
+        ageZip: 5
+        # Deletes the dataSnapshot graphson files older than 30 days
+        ageDelete: 30
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 60
+  periodSeconds: 60
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: false
+
+readiness:
+  initialDelaySeconds: 60
+  periodSeconds: 10
+
+service:
+  type: ClusterIP
+  # REST API port for the graphadmin microservice
+  portName: aai-graphadmin-8449
+  internalPort: 8449
+  portName2: aai-graphadmin-5005
+  internalPort2: 5005
+
+ingress:
+  enabled: false
+
+resources: {}
+  # We usually recommend not to specify default resources and to leave this as a conscious
+  # choice for the user. This also increases chances charts run on environments with little
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+  #
+  # Example:
+  # Configure resource requests and limits
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+  # Minimum memory for development is 2 CPU cores and 4GB memory
+  # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
diff --git a/kubernetes/aai/charts/aai-hbase/Chart.yaml b/kubernetes/aai/charts/aai-hbase/Chart.yaml
deleted file mode 100644 (file)
index eaf6bbd..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-description: ONAP AAI hbase
-name: aai-hbase
-version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml b/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml
deleted file mode 100644 (file)
index 5308fa0..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-spec:
-  replicas: {{ .Values.replicaCount }}
-  template:
-    metadata:
-      labels:
-        app: {{ include "common.name" . }}
-        release: {{ .Release.Name }}
-      name: {{ include "common.name" . }}
-    spec:
-      hostname: aai-hbase
-      containers:
-      - name: {{ include "common.name" . }}
-        image: {{ .Values.global.dockerhubRepository | default .Values.dockerhubRepository }}/{{ .Values.image }}
-        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-        ports:
-        - containerPort: {{ .Values.service.internalPort }}
-        - containerPort: {{ .Values.service.internalPort2 }}
-        - containerPort: {{ .Values.service.internalPort3 }}
-        - containerPort: {{ .Values.service.internalPort4 }}
-        - containerPort: {{ .Values.service.internalPort5 }}
-        - containerPort: {{ .Values.service.internalPort6 }}
-        - containerPort: {{ .Values.service.internalPort7 }}
-        # disable liveness probe when breakpoints set in debugger
-        # so K8s doesn't restart unresponsive container
-        {{- if eq .Values.liveness.enabled true }}
-        livenessProbe:
-          tcpSocket:
-            port: {{ .Values.service.internalPort }}
-          initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
-          periodSeconds: {{ .Values.liveness.periodSeconds }}
-        {{ end -}}
-        readinessProbe:
-          tcpSocket:
-            port: {{ .Values.service.internalPort }}
-          initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
-          periodSeconds: {{ .Values.readiness.periodSeconds }}
-        volumeMounts:
-        - name: hbase-data
-          mountPath: /tmp
-        - name: localtime
-          mountPath: /etc/localtime
-          readOnly: true
-        resources:
-{{ toYaml .Values.resources | indent 10 }}
-      {{- if .Values.nodeSelector }}
-      nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 8 }}
-      {{- end -}}
-      {{- if .Values.affinity }}
-      affinity:
-{{ toYaml .Values.affinity | indent 8 }}
-      {{- end }}
-
-      volumes:
-      - name: hbase-data
-        hostPath:
-          path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
-      - name: localtime
-        hostPath:
-          path: /etc/localtime
-      imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-hbase/templates/service.yaml b/kubernetes/aai/charts/aai-hbase/templates/service.yaml
deleted file mode 100644 (file)
index 53c5e5f..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
-  name: {{ include "common.servicename" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-spec:
-  type: {{ .Values.service.type }}
-  ports:
-  {{if eq .Values.service.type "NodePort" -}}
-  - port: {{ .Values.service.internalPort }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
-    name: {{ .Values.service.name }}
-  - port: {{ .Values.service.internalPort2 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
-    name: {{ .Values.service.name }}2
-  - port: {{ .Values.service.internalPor3t }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
-    name: {{ .Values.service.name }}3
-  - port: {{ .Values.service.internalPort4 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
-    name: {{ .Values.service.name }}4
-  - port: {{ .Values.service.internalPort5 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
-    name: {{ .Values.service.name }}5
-  - port: {{ .Values.service.internalPort6 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort6 }}
-    name: {{ .Values.service.name }}6
-  - port: {{ .Values.service.internalPort7 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort7 }}
-    name: {{ .Values.service.name }}7
-  {{- else -}}
-  - port: {{ .Values.service.internalPort }}
-    name: {{ .Values.service.name }}
-  - port: {{ .Values.service.internalPort2 }}
-    name: {{ .Values.service.name }}2
-  - port: {{ .Values.service.internalPort3 }}
-    name: {{ .Values.service.name }}3
-  - port: {{ .Values.service.internalPort4 }}
-    name: {{ .Values.service.name }}4
-  - port: {{ .Values.service.internalPort5 }}
-    name: {{ .Values.service.name }}5
-  - port: {{ .Values.service.internalPort6 }}
-    name: {{ .Values.service.name }}6
-  - port: {{ .Values.service.internalPort7 }}
-    name: {{ .Values.service.name }}7
-  {{- end}}
-  selector:
-    app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
-  clusterIP: None
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 33558f2..507624c 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI modelloader
 name: aai-modelloader
index 6c2fcdc..72b5dab 100644 (file)
@@ -1,3 +1,19 @@
+<!--
+# Copyright © 2018 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.
+-->
+
 <configuration scan="true" scanPeriod="3 seconds" debug="false">
   <include resource="org/springframework/boot/logging/logback/base.xml" />
   <property name="logDir" value="/var/log/onap" />
index e9b24b6..746bdb4 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Model Loader Distribution Client Configuration
 ml.distribution.ACTIVE_SERVER_TLS_AUTH=false
 ml.distribution.ASDC_ADDRESS=sdc-be.{{.Release.Namespace}}:8443
index 8b63cfa..3732c69 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: ConfigMap
 metadata:
index 7ca2a9f..fe989b9 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Amdocs, AT&T
+# Modifications Copyright © 2018 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 69bd3f8..32a3482 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Secret
 metadata:
index 4bfe787..567d42d 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index 8acb28f..977860f 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for modelloader.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
@@ -7,7 +21,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/model-loader:1.2.1
+image: onap/model-loader:1.3-STAGING-latest
 pullPolicy: Always
 restartPolicy: Always
 
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 3ab5c1a..bbb845d 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI resources
 name: aai-resources
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/cadi.properties b/kubernetes/aai/charts/aai-resources/resources/config/aaf/cadi.properties
new file mode 100644 (file)
index 0000000..c8d0b04
--- /dev/null
@@ -0,0 +1,8 @@
+
+cadi_loglevel=INFO
+cadi_prop_files=/opt/app/aai-resources/resources/aaf/org.osaaf.location.props:/opt/app/aai-resources/resources/aaf/org.onap.aai.props
+
+# OAuth2
+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
+
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.keyfile b/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.keyfile
new file mode 100644 (file)
index 0000000..3416d4a
--- /dev/null
@@ -0,0 +1,27 @@
+2otP92kNFHdexroZxvgYY7ffslFiwCD3CiVYMIfUF2edqZK7972NwkvE_mbaBo6jh8lByLIqrWAf
+jyzoiVsvQ_kCa0cS1xaRLpcxv3bx1b7o3hGPBqpd6vmSG4y2JLzNlCBZWuTJz827wr8p_fWrYuUm
+4L1WoaEe8W5PRnXjl4hDqbJBAlEoRIBXugUDt_7O5wgx2Rl3HVoOczZtf0RzONZ1F0BmKf3QlAUe
+moSbARitYRgIPt5sLbT7qPyoEpGDhQ1XBowR744-wsjBc-14yO62Ajp5xWKTp15uWn3_HHuw1SAf
+GWSBRGlSlEVkXQqi9Hw5jDttKVzHX1ckwR0SQOirbtHPHplxPX3WKjKhSdSeMzw6LOAHIQYRMKBT
+74oGnULAfPtV7TaGwOKriT3P49CoPdt9On89-LGyCZSxDWKH0K-rgB6I2_hPT2Uzr3jmXiMa-sfh
+iMvyQ7ABBVx0OFsUuNb5mcU2O6dWiQreL5RerrloV_X3ZtnNjxENXKjQ5KBR1A5ISPjFFK-kf4Rb
+p6FSII8LcsiqgdWuZ4GX_C6x8HX4A-vD0x3Uc9CfoXY-k23cNIy-R-W-oB-P2OgdWDNgZ7VaOLNt
+3L-NwWpNblfYvs93cNmkbVAwCZ3r0OP7RFeuON84TRaynK_Fh2S3rypRyJcUmM1pvpZqJ5_-umSW
+hUs1OqkdLv3xjlVzzK-3nMr0q3Zcyp4XdyLYtcX5I3Xqk9ZcsyAT7ghmHhV8KjUjue7OcfAWg0m7
+RJLGq6VC8HeK4HEMa4lF677Qh7DRufghIDEmQSIDfGA790WGSA8HqcOvAL4hURCHyCWiPa5i8ksX
+xX4HyqF8PCVCLJ_ZhzcuIlc0jStAexWbJU_vcyX7XgUaHCkF-M-zv1FP6Z3DHBMD2QqSWjmyNCCk
+8sIuwzs62P_j2o9jG33kssedCrUWOwZancU107-5H0Zw-UWvtCqUfmRZ7TsEbWY7lk_SKfLfAN5q
+ncOQgU_VxDXUFDST4LN_WVECRafK3UtwWomxWSji25Lbf6NVni3ok-yLMDZR-wrE-54jLPES9j0i
+5N0xrk9CfsvGUpUZ1_XQcgaxI6m27DtCCJXb5ywenPBiUIJCMCTq88CqNZxGpju2i4BJcUH2hUHe
+GKhO8pgslwhtEVot9EDwdzSrJkWFCfb6ud4zMxrqdi7-mLWMOydg6lhpEFEX5wu2BLIujGsZlEGE
+_K9jGfBypjXuJCKDZIuPfEnf_7idjKis_JcFB7x4Hx2HHDcBjlWWFZN_VIEnPkQSyZEC26RTFP3k
+zkY3GwUfA36a4XW2pu3gE9wz-W6fkONfzOZ6YiyCm_dRFUVuGSdJG02Hh5iXYlMOGJltPzWH2jVf
+S-QTOmXQTKSOheXoJO6O-9uQbsRf-kq-6w1pvIOp4ms35w4_0Xj0Xr2a9y-L9PdBZvrUsa-jxsZU
+LyA-YY4Ej6QwDBDTD2MGjF1E5_ekYgjoNlltM9rJjofruM4ym0n7LPHC7YXXQSEFOZYeTKi6wUDw
+hQ1DoWHgu4PQ2lexada8sxQdConbPe2iW16h-PrO5D12E4XbT00fqaMlBmjQwzdNRdCC2NRPIQ5W
+nwaO8dZ9yjxsjT7ZVHb9-DRblb3XDocponzxVXqUGtJAie4WXQnerX0ApTWGaHEr5y56JJVS_3LP
+bKrbXBXcs4jTUX4ECXRrOs8JQDQNysXhvTPCu0XUxNZpjx6KLxDs93k2OcESHjl5J6n6OKKJqqoN
+JEyFO5LGXpnmUJbn0-CaHHPRI1mHwEu4brY8wDZd9A0PD1KGXDoCHMfEk1lGblQdyOcVrXZ6uSBk
+Z6zHDnwSCHO1mPYqtelJQehZoFuPSv9PIgKLxs_qJOtZFnXII5YO1mGXgiIBWBjUFDR5HG4ENS6y
+J4MCF-JLMp-PVMAkOaCIQRRDpRnMm_fT1sc_P562Diu_pcdt-r55pMFQYGoGfjRmxQBKk0-SsdnP
+mlZIiis9DfQEN0q3QQdNRYBJD7tmhUwhAPZdLgXqJA8sZf8UyFQhhpsky79NT343YL9smUlF
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.p12 b/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.p12
new file mode 100644 (file)
index 0000000..023e2ea
Binary files /dev/null and b/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.p12 differ
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.props b/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.onap.aai.props
new file mode 100644 (file)
index 0000000..906f170
--- /dev/null
@@ -0,0 +1,13 @@
+############################################################
+# Properties Generated by AT&T Certificate Manager
+# @copyright 2016, AT&T
+############################################################
+cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US
+cadi_keyfile=/opt/app/aai-resources/resources/aaf/org.onap.aai.keyfile
+cadi_keystore=/opt/app/aai-resources/resources/aaf/org.onap.aai.p12
+cadi_keystore_password=enc:383RDJRFA6yQz9AOxUxC1iIg3xTJXityw05MswnpnEtelRQy2D4r5INQjrea7GTV
+#cadi_key_password=enc:<KEY PASSWORD (optional if the same as KEYSTORE PASSWORD)>
+cadi_alias=aai@aai.onap.org
+cadi_truststore=/opt/app/aai-resources/resources/aaf/truststoreONAPall.jks
+cadi_truststore_password=enc:s77wlnZFoQ08NhnU3OSeWO6uKgRwC6sAK-wTvVubNz2
+cadi_loglevel=INFO
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.osaaf.location.props b/kubernetes/aai/charts/aai-resources/resources/config/aaf/org.osaaf.location.props
new file mode 100644 (file)
index 0000000..77c3d53
--- /dev/null
@@ -0,0 +1,24 @@
+##
+## org.osaaf.location.props
+##
+## Localized Machine Information
+##
+# Almeda California ?
+cadi_latitude=37.78187
+cadi_longitude=-122.26147
+
+# Locate URL (which AAF Env)
+aaf_locate_url=https://aaf-locate.{{.Release.Namespace}}:8095
+
+
+# AAF URL
+aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.0
+
+# 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
+
+
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/permissions.properties b/kubernetes/aai/charts/aai-resources/resources/config/aaf/permissions.properties
new file mode 100644 (file)
index 0000000..4234121
--- /dev/null
@@ -0,0 +1,2 @@
+permission.type=org.onap.aai.resources
+permission.instance=*
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaf/truststoreONAPall.jks b/kubernetes/aai/charts/aai-resources/resources/config/aaf/truststoreONAPall.jks
new file mode 100644 (file)
index 0000000..2da1dcc
Binary files /dev/null and b/kubernetes/aai/charts/aai-resources/resources/config/aaf/truststoreONAPall.jks differ
index 1763a8e..4b5ab07 100644 (file)
@@ -35,65 +35,33 @@ aai.config.checktime=1000
 # this could come from siteconfig.pl?
 aai.config.nodename=AutomaticallyOverwritten
 
-
-
-aai.auth.cspcookies_on=false
-aai.dbmodel.filename=ex5.json
-
 aai.server.url.base=https://aai.{{ include "common.namespace" . }}:8443/aai/
-aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/v11/
+aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/{{ .Values.global.config.schema.version.api.default }}/
 aai.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
 
+{{ if .Values.global.config.basic.auth.enabled }}
 aai.tools.enableBasicAuth=true
-aai.tools.username=AAI
-aai.tools.password=AAI
+aai.tools.username={{ .Values.global.config.basic.auth.username }}
+aai.tools.password={{ .Values.global.config.basic.auth.passwd }}
+{{ end }}
 
-aai.truststore.filename=aai_keystore
-aai.truststore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
-aai.keystore.filename=aai_keystore
-aai.keystore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+aai.truststore.filename={{ .Values.global.config.truststore.filename }}
+aai.truststore.passwd.x={{ .Values.global.config.truststore.passwd }}
+aai.keystore.filename={{ .Values.global.config.keystore.filename }}
+aai.keystore.passwd.x={{ .Values.global.config.keystore.passwd }}
 
-
-aai.notification.current.version=v11
+aai.notification.current.version={{ .Values.global.config.schema.version.api.default }}
 aai.notificationEvent.default.status=UNPROCESSED
-aai.notificationEvent.default.eventType=AAI-EVENT
-aai.notificationEvent.default.domain=dev
+aai.notificationEvent.default.eventType={{ .Values.global.config.notification.eventType }}
+aai.notificationEvent.default.domain={{ .Values.global.config.notification.domain }}
 aai.notificationEvent.default.sourceName=aai
 aai.notificationEvent.default.sequenceNumber=0
 aai.notificationEvent.default.severity=NORMAL
-aai.notificationEvent.default.version=v11
+aai.notificationEvent.default.version={{ .Values.global.config.schema.version.api.default }}
 # This one lets us enable/disable resource-version checking on updates/deletes
 aai.resourceversion.enableflag=true
 aai.logging.maxStackTraceEntries=10
-aai.default.api.version=v11
-
-
-
-# Used by Model-processing code
-aai.model.delete.sleep.per.vtx.msec=500
-aai.model.query.resultset.maxcount=50
-aai.model.query.timeout.sec=90
-
-# Used by Data Grooming
-aai.grooming.default.max.file=150
-aai.grooming.default.sleep.minutes=7
-
-aai.model.proc.max.levels=50
-aai.edgeTag.proc.max.levels=50
-
-# for transaction log
-aai.logging.hbase.interceptor=true
-aai.logging.hbase.enabled=true
-aai.logging.hbase.logrequest=true
-aai.logging.hbase.logresponse=true
-
-# for gremlin server
-aai.server.rebind=g
-hbase.table.name=aailogging.dev
-hbase.table.timestamp.format=YYYYMMdd-HH:mm:ss:SSS
-hbase.zookeeper.quorum=localhost
-hbase.zookeeper.property.clientPort=2181
-hbase.zookeeper.znode.parent=/hbase
+aai.default.api.version={{ .Values.global.config.schema.version.api.default }}
 
 aai.logging.trace.enabled=true
 aai.logging.trace.logrequest=false
@@ -103,19 +71,18 @@ aai.transaction.logging=true
 aai.transaction.logging.get=false
 aai.transaction.logging.post=false
 
-aai.realtime.clients=SDNC,MSO,SO,robot-ete
+aai.realtime.clients={{ .Values.global.config.realtime.clients }}
 
-#timeout for crud enabled flag
-aai.crud.timeoutenabled=true
+# Timeout for crud enabled flag
+aai.crud.timeoutenabled={{ .Values.config.crud.timeout.enabled }}
 
-#timeout app specific -1 to bypass for that app id, a whole number to override the timeout with that value (in ms)
-aai.crud.timeout.appspecific=JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAIRctFeed,-1|NewvceCreator,-1|IANewvceCreator,-1|AAI-CSIOVALS,-1
+# Timeout app specific -1 to bypass for that app id, a whole number to override the timeout with that value (in ms)
+aai.crud.timeout.appspecific={{ .Values.config.crud.timeout.appspecific }}
 
 #default timeout limit added for crud if not overridden (in ms)
-aai.crud.timeoutlimit=100000
+aai.crud.timeoutlimit={{ .Values.config.crud.timeout.limit }}
 #limit set for bulk consumer APIS
-aai.bulkconsumer.payloadlimit=30
+aai.bulkconsumer.payloadlimit={{ .Values.config.bulk.limit }}
 
 #uncomment and use header X-OverrideLimit with the value to override the bulk api limit
-#aai.bulkconsumer.payloadoverride=E6F04B93462CB5B0EDF41C05A9DDF5C3FE59748F
-aai.bulkconsumer.payloadoverride=false
+aai.bulkconsumer.payloadoverride={{ .Values.config.bulk.override }}
index cfeabb9..9c13d48 100644 (file)
@@ -1,8 +1,22 @@
+# Copyright © 2018 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.
+
 # The following info parameters are being referenced by ajsc6
 info.build.artifact=aai-resources
 info.build.name=resources
 info.build.description=Resources Microservice
-info.build.version=1.2.0
+info.build.version=1.3.0
 
 spring.application.name=aai-resources
 spring.jersey.type=filter
@@ -10,7 +24,8 @@ spring.jersey.type=filter
 server.contextPath=/
 spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
 
-spring.profiles.active=production,dmaap
+spring.profiles.active={{ .Values.global.config.profiles.active }}
+spring.jersey.application-path=${schema.uri.base.path}
 #The max number of active threads in this pool
 server.tomcat.max-threads=200
 #The minimum number of threads always kept alive
@@ -18,15 +33,6 @@ server.tomcat.min-Spare-Threads=25
 #The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
 server.tomcat.max-idle-time=60000
 
-
-#Add this properties only if you want to change the URL, AJSC Framework interceptors will intercept
-#com.att.ajsc.common.interceptors.PreInterceptor.url=/**
-#com.att.ajsc.common.interceptors.PostInterceptor.url=/**
-
-#Servlet context parameters
-server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
-kubernetes.namespace={{ include "common.namespace" . }}
-
 # If you get an application startup failure that the port is already taken
 # If thats not it, please check if the key-store file path makes sense
 server.local.startpath=aai-resources/src/main/resources/
@@ -34,39 +40,43 @@ server.basic.auth.location=${server.local.startpath}etc/auth/realm.properties
 
 server.port=8447
 server.ssl.enabled-protocols=TLSv1.1,TLSv1.2
-server.ssl.key-store=${server.local.startpath}etc/auth/aai_keystore
-server.ssl.key-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
-server.ssl.trust-store=${server.local.startpath}etc/auth/aai_keystore
-server.ssl.trust-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
+server.ssl.key-store=${server.local.startpath}etc/auth/{{ .Values.global.config.keystore.filename }}
+server.ssl.key-store-password=password({{ .Values.global.config.keystore.passwd }})
+server.ssl.trust-store=${server.local.startpath}etc/auth/{{ .Values.global.config.truststore.filename }}
+server.ssl.trust-store-password=password({{ .Values.global.config.truststore.passwd }})
 server.ssl.client-auth=want
 server.ssl.key-store-type=JKS
 
 # JMS bind address host port
 jms.bind.address=tcp://localhost:61647
-dmaap.ribbon.eureka.enabled=false
 dmaap.ribbon.listOfServers=message-router.{{.Release.Namespace}}:3904
-# Number of milliseconds to wait before making ping requests again
-dmaap.ribbon.ServerListRefreshInterval=75000
-dmaap.ribbon.NFLoadBalancerPingInterval=75000
-dmaap.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.AvailabilityFilteringRule
-dmaap.ribbon.NFLoadBalancerPingClassName=org.onap.aai.config.HttpPingImpl
-dmaap.ribbon.EnableMarkingServerDownOnReachingFailureLimit=true
-dmaap.ribbon.ServerDownFailureLimit=1
-# This needs to be verified but it seems that adding this property should automatically
-# Make the dmaap client change the url from http to https depending on the server
-dmaap.ribbon.securePorts=3905
 
-# Custom Dmaap Specific Configuration
-dmaap.ribbon.username=
-dmaap.ribbon.password=
-dmaap.ribbon.health.endpoint=/topics/AAI-EVENT
-# Number of seconds to wait for the ping to work and might need to increase this if the pings are all failing
-dmaap.ribbon.pingport.timeout=3
+# Schema related attributes for the oxm and edges
+# Any additional schema related attributes should start with prefix schema
+schema.configuration.location=N/A
+schema.source.name={{ .Values.global.config.schema.source.name }}
+schema.nodes.location=${server.local.startpath}/schema/${schema.source.name}/oxm/
+schema.edges.location=${server.local.startpath}/schema/${schema.source.name}/dbedgerules/
+
+schema.ingest.file=${server.local.startpath}/application.properties
+
+# Schema Version Related Attributes
+
+schema.uri.base.path={{ .Values.global.config.schema.uri.base.path }}
+# Lists all of the versions in the schema
+schema.version.list={{ .Values.global.config.schema.version.list }}
+# Specifies from which version should the depth parameter to default to zero
+schema.version.depth.start={{ .Values.global.config.schema.version.depth }}
+# Specifies from which version should the related link be displayed in response payload
+schema.version.related.link.start={{ .Values.global.config.schema.version.related.link }}
+
+# Specifies from which version should the client see only the uri excluding host info
+# Before this version server base will also be included
+schema.version.app.root.start={{ .Values.global.config.schema.version.app.root }}
+# Specifies from which version should the namespace be changed
+schema.version.namespace.change.start={{ .Values.global.config.schema.version.namespace.change }}
+# Specifies from which version should the client start seeing the edge label in payload
+schema.version.edge.label.start={{ .Values.global.config.schema.version.edge.label }}
+# Specifies the version that the application should default to
+schema.version.api.default={{ .Values.global.config.schema.version.api.default }}
 
-niws.loadbalancer.dmaap.filterCircuitTripped=true
-niws.loadbalancer.dmaap.connectionFailureCountThreshold=3
-niws.loadbalancer.dmaap.circuitTripMaxTimeoutSeconds=180
-#dmaap.ribbon.retryableStatusCodes=404,503
-#dmaap.ribbon.retryableStatusCodes.MaxAutoRetriesNextServer=2
-#dmaap.ribbon.retryableStatusCodes.MaxAutoRetries=2
-#dmaap.ribbon.retryableStatusCodes.OkToRetryOnAllOperations=true
index b9216bf..2c22d14 100644 (file)
@@ -23,6 +23,8 @@
 query.fast-property=true
 query.smart-limit=false
 
+{{ if .Values.global.config.cluster.cassandra.dynamic }}
+
 {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
 {{- $global := . }}
 
@@ -35,9 +37,60 @@ storage.cassandra.read-consistency-level=LOCAL_QUORUM
 storage.cassandra.write-consistency-level=LOCAL_QUORUM
 storage.cassandra.replication-factor=3
 storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
-#storage.cassandra.replication-strategy-options=MTA1cass,3
 
-#schema.default=none
+{{ else }}
+
+{{ if .Values.global.config.storage }}
+
+storage.backend={{ .Values.global.config.storage.backend }}
+
+{{ if eq .Values.global.config.storage.backend "cassandra" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cassandra.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cassandra.read-consistency-level={{ .Values.global.config.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.config.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.config.storage.cassandra.replicationFactor | int }}
+storage.cassandra.astyanax.cluster-name= {{ .Values.global.config.storage.clusterName }}
+storage.cassandra.astyanax.local-datacenter= {{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "cql" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cql.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cql.read-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.config.storage.cql.replicationFactor | int }}
+
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.config.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.config.storage.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "hbase" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.hbase.table={{ .Values.global.config.storage.name }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ end }}
+
+{{ end }}
+
+{{ end }}
+
 storage.lock.wait-time=300
 #caching on
 cache.db-cache = true
index d8f6f71..b19c9b6 100644 (file)
 query.fast-property=true
 query.smart-limit=false
 
+{{ if .Values.global.config.cluster.cassandra.dynamic }}
+
 {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
 {{- $global := . }}
 
-# the following parameters are not reloaded automatically and require a manual bounce
 storage.backend=cassandra
 storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+
 storage.cassandra.keyspace=aaigraph
 
 storage.cassandra.read-consistency-level=LOCAL_QUORUM
 storage.cassandra.write-consistency-level=LOCAL_QUORUM
 storage.cassandra.replication-factor=3
 storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
-#storage.cassandra.replication-strategy-options=MTA1cass,3
 
-#schema.default=none
+{{ else }}
+
+{{ if .Values.global.config.storage }}
+
+storage.backend={{ .Values.global.config.storage.backend }}
+
+{{ if eq .Values.global.config.storage.backend "cassandra" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cassandra.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cassandra.read-consistency-level={{ .Values.global.config.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.config.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.config.storage.cassandra.replicationFactor | int }}
+storage.cassandra.astyanax.cluster-name= {{ .Values.global.config.storage.clusterName }}
+storage.cassandra.astyanax.local-datacenter= {{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "cql" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cql.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cql.read-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.config.storage.cql.replicationFactor | int }}
+
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.config.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.config.storage.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "hbase" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.hbase.table={{ .Values.global.config.storage.name }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ end }}
+
+{{ end }}
+
+{{ end }}
+
 storage.lock.wait-time=300
 # Setting db-cache to false ensure the fastest propagation of changes across servers
 cache.db-cache = false
-
 #load graphson file on startup
 load.snapshot.file=false
index a318796..4cf6c74 100644 (file)
@@ -1,62 +1,63 @@
-<!--
-
-    ============LICENSE_START=======================================================
-    org.onap.aai
-    ================================================================================
-    Copyright © 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.
-
--->
-<configuration>
-       <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
-       <appender name="ACCESS"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}
-                       </fileNamePattern>
-               </rollingPolicy>
-               <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">
-                       <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>
-               </encoder>
-       </appender>
-       <appender-ref ref="ACCESS" />
-</configuration>
-
-<!-- 
-%a - Remote IP address
-%A - Local IP address
-%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent
-%B - Bytes sent, excluding HTTP headers
-%h - Remote host name
-%H - Request protocol
-%l - Remote logical username from identd (always returns '-')
-%m - Request method
-%p - Local port
-%q - Query string (prepended with a '?' if it exists, otherwise an empty string
-%r - First line of the request
-%s - HTTP status code of the response
-%S - User session ID
-%t - Date and time, in Common Log Format format
-%u - Remote user that was authenticated
-%U - Requested URL path
-%v - Local server name
-%I - current request thread name (can compare later with stacktraces)
-
-%z - Custom pattern that parses the cert for the subject
-%y - Custom pattern determines rest or dme2
- -->
\ No newline at end of file
+<!--\r
+\r
+    ============LICENSE_START=======================================================\r
+    org.onap.aai\r
+    ================================================================================\r
+    Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
+    Modifications Copyright © 2018 Amdocs, Bell Canada\r
+    ================================================================================\r
+    Licensed under the Apache License, Version 2.0 (the "License");\r
+    you may not use this file except in compliance with the License.\r
+    You may obtain a copy of the License at\r
+\r
+       http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+    Unless required by applicable law or agreed to in writing, software\r
+    distributed under the License is distributed on an "AS IS" BASIS,\r
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+    See the License for the specific language governing permissions and\r
+    limitations under the License.\r
+    ============LICENSE_END=========================================================\r
+\r
+    ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
+\r
+-->\r
+<configuration>\r
+       <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />\r
+       <appender name="ACCESS"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}\r
+                       </fileNamePattern>\r
+               </rollingPolicy>\r
+               <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">\r
+                       <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>\r
+               </encoder>\r
+       </appender>\r
+       <appender-ref ref="ACCESS" />\r
+</configuration>\r
+\r
+<!-- \r
+%a - Remote IP address\r
+%A - Local IP address\r
+%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent\r
+%B - Bytes sent, excluding HTTP headers\r
+%h - Remote host name\r
+%H - Request protocol\r
+%l - Remote logical username from identd (always returns '-')\r
+%m - Request method\r
+%p - Local port\r
+%q - Query string (prepended with a '?' if it exists, otherwise an empty string\r
+%r - First line of the request\r
+%s - HTTP status code of the response\r
+%S - User session ID\r
+%t - Date and time, in Common Log Format format\r
+%u - Remote user that was authenticated\r
+%U - Requested URL path\r
+%v - Local server name\r
+%I - current request thread name (can compare later with stacktraces)\r
+\r
+%z - Custom pattern that parses the cert for the subject\r
+%y - Custom pattern determines rest or dme2\r
+ -->\r
index 94eb9a9..9a7216c 100644 (file)
@@ -3,6 +3,7 @@
     org.onap.aai
     ================================================================================
     Copyright © 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.
     </logger>
     <root level="DEBUG">
         <appender-ref ref="external" />
+        {{ if .Values.global.config.logback.console.enabled }}
+        <appender-ref ref="STDOUT" />
+        {{ end }}
     </root>
 </configuration>
index f0e0172..962e491 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # format : username: password[,rolename ...]
 # default username/password: AAI/AAI, MSO/MSO, ModelLoader/ModelLoader...
 AAI:OBF:1gfr1ev31gg7,admin
index 373819e..d1d72b9 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: ConfigMap
 metadata:
@@ -53,3 +67,26 @@ metadata:
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-aaf-props
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/aaf/org.osaaf.location.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/permissions.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/org.onap.aai.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/cadi.properties").AsConfig . | indent 2 }}
+
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-aaf-keys
+  namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/aaf/org.onap.aai.keyfile").AsSecrets . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/org.onap.aai.p12").AsSecrets . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/truststoreONAPall.jks").AsSecrets . | indent 2 }}
index c6bb14c..7df214f 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -417,12 +418,20 @@ spec:
           ]'
     spec:
       hostname: aai-resources
+    {{ if .Values.global.initContainers.enabled }}
       initContainers:
       - command:
+      {{  if .Values.global.jobs.createSchema.enabled  }}
+        - /root/job_complete.py
+        args:
+        - --job-name
+        - {{ .Release.Name }}-aai-graphadmin-create-db-schema
+      {{  else }}
         - /root/ready.py
         args:
         - --container-name
         - aai-cassandra
+      {{  end  }}
         env:
         - name: NAMESPACE
           valueFrom:
@@ -432,15 +441,16 @@ spec:
         image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         name: {{ include "common.name" . }}-readiness
+    {{ end }}
       containers:
       - name: {{ include "common.name" . }}
         image: "{{ include "common.repository" . }}/{{ .Values.image }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         env:
         - name: LOCAL_USER_ID
-          value: {{ .Values.config.userId | quote }}
+          value: {{ .Values.global.config.userId | quote }}
         - name: LOCAL_GROUP_ID
-          value: {{ .Values.config.groupId | quote }}
+          value: {{ .Values.global.config.groupId | quote }}
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
@@ -462,12 +472,36 @@ spec:
         - mountPath: /opt/app/aai-resources/resources/localhost-access-logback.xml
           name: {{ include "common.fullname" . }}-localhost-access-log-conf
           subPath: localhost-access-logback.xml
+        - mountPath: /opt/app/aai-resources/resources/aaf/org.onap.aai.keyfile
+          name: {{ include "common.fullname" . }}-aaf-certs
+          subPath: org.onap.aai.keyfile
+        - mountPath: /opt/app/aai-resources/resources/aaf/org.onap.aai.props
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: org.onap.aai.props
+        - mountPath: /opt/app/aai-resources/resources/aaf/org.osaaf.location.props
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: org.osaaf.location.props
+        - mountPath: /opt/app/aai-resources/resources/aaf/permissions.properties
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: permissions.properties
+        - mountPath: /opt/app/aai-resources/resources/cadi.properties
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: cadi.properties
+        - mountPath: /opt/app/aai-resources/resources/aaf/org.onap.aai.p12
+          name: {{ include "common.fullname" . }}-aaf-certs
+          subPath: org.onap.aai.p12
+        - mountPath: /opt/app/aai-resources/resources/aaf/truststoreONAPall.jks
+          name: {{ include "common.fullname" . }}-aaf-certs
+          subPath: truststoreONAPall.jks
         - mountPath: /opt/app/aai-resources/resources/application.properties
           name: {{ include "common.fullname" . }}-springapp-conf
           subPath: application.properties
-        - mountPath: /opt/app/aai-resources/resources/etc/auth/aai_keystore
-          name: {{ include "common.fullname" . }}-auth-sec
-          subPath: aai_keystore
+          {{ $global := . }}
+          {{ range $job := .Values.global.config.auth.files }}
+        - mountPath: /opt/app/aai-resources/resources/etc/auth/{{ . }}
+          name: {{ include "common.fullname" $global }}-auth-truststore-sec
+          subPath: {{ . }}
+          {{ end }}
         ports:
         - containerPort: {{ .Values.service.internalPort }}
         - containerPort: {{ .Values.service.internalPort2 }}
@@ -535,15 +569,26 @@ spec:
       - name: {{ include "common.fullname" . }}-aaiconfig-conf
         configMap:
          name: {{ include "common.fullname" . }}-aaiconfig-configmap
+      - name: {{ include "common.fullname" . }}-aaf-properties
+        configMap:
+         name: {{ include "common.fullname" . }}-aaf-props
+      - name: {{ include "common.fullname" . }}-aaf-certs
+        secret:
+         secretName: {{ include "common.fullname" . }}-aaf-keys
       - name: {{ include "common.fullname" . }}-springapp-conf
         configMap:
          name: {{ include "common.fullname" . }}-springapp-configmap
       - name: {{ include "common.fullname" . }}-realm-conf
         configMap:
          name: {{ include "common.fullname" . }}-realm-configmap
-      - name: {{ include "common.fullname" . }}-auth-sec
+      - name: {{ include "common.fullname" . }}-auth-truststore-sec
         secret:
-         secretName: aai-auth-secret
+         secretName: aai-auth-truststore-secret
+         items:
+          {{ range $job := .Values.global.config.auth.files }}
+           - key: {{ . }}
+             path: {{ . }}
+          {{ end }}
       restartPolicy: {{ .Values.restartPolicy }}
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 9ba61fa..d119912 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index 28b271e..943ace8 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for resources.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
@@ -6,10 +20,9 @@ global: # global defaults
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
 
-
 # application image
 repository: nexus3.onap.org:10001
-image: onap/aai-resources:1.2.2
+image: onap/aai-resources:1.3-STAGING-latest
 pullPolicy: Always
 restartPolicy: Always
 
@@ -18,8 +31,26 @@ replicaCount: 1
 
 # Configuration for the resources deployment
 config:
-  userId: 1000
-  groupId: 1000
+
+  # Specifies crud related operation timeouts and overrides
+  crud:
+    timeout:
+      # Specifies if the timeout for REST GET calls should be enabled 
+      enabled: true
+      # Specifies the timeout values for application specific
+      # Its a pipe seperated list where each element before comma represents 
+      # the X-FromAppId and the comma after specifies the timeout limit in ms
+      # If the timeout limit is -1 then it means for these apps no timeout
+      appspecific: JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAIRctFeed,-1|NewvceCreator,-1|IANewvceCreator,-1|AAI-CSIOVALS,-1
+      # Specifies what is the maximum timeout limit in milliseconds
+      limit: 100000
+
+  # Specifies configuration for bulk apis
+  bulk:
+    # Specifies for a bulk payload how many transactions in total allowed
+    limit: 30
+    # Specifies if the bulk can be override and if it can the value
+    override: false
 
 nodeSelector: {}
 
@@ -45,7 +76,6 @@ service:
   portName2: aai-resources-5005
   internalPort2: 5005
 
-
 ingress:
   enabled: false
 
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index da911ab..fcb79f1 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI search-data
 name: aai-search-data
index f98ea37..5fc135d 100644 (file)
@@ -1,32 +1,32 @@
-[
-       {
-               "name": "whitespace_analyzer", 
-               "description": "A standard whitespace analyzer.",
-               "behaviours": [
-                       "Tokenize the text using white space characters as delimeters.",
-                       "Convert all characters to lower case.",
-                       "Convert all alphanumeric and symbolic Unicode characters above the first 127 ASCII characters into their ASCII equivalents."
-               ],
-               "tokenizer": "whitespace",
-               "filters": [
-                       "lowercase",
-                       "asciifolding"
-               ]
-       },
-       {
-               "name": "ngram_analyzer", 
-               "description": "An analyzer which performs ngram filtering on the data stream.",
-               "behaviours": [
-                       "Tokenize the text using white space characters as delimeters.",
-                       "Convert all characters to lower case.",
-                       "Convert all alphanumeric and symbolic Unicode characters above the first 127 ASCII characters into their ASCII equivalents.",
-                       "Apply ngram filtering using the following values for minimum and maximum size in codepoints of a single n-gram: minimum = 1, maximum = 2."
-               ],
-               "tokenizer": "whitespace",
-               "filters": [
-                       "lowercase",
-                       "asciifolding",
-                       "ngram_filter"
-               ]
-       }
+[\r
+       {\r
+               "name": "whitespace_analyzer", \r
+               "description": "A standard whitespace analyzer.",\r
+               "behaviours": [\r
+                       "Tokenize the text using white space characters as delimeters.",\r
+                       "Convert all characters to lower case.",\r
+                       "Convert all alphanumeric and symbolic Unicode characters above the first 127 ASCII characters into their ASCII equivalents."\r
+               ],\r
+               "tokenizer": "whitespace",\r
+               "filters": [\r
+                       "lowercase",\r
+                       "asciifolding"\r
+               ]\r
+       },\r
+       {\r
+               "name": "ngram_analyzer", \r
+               "description": "An analyzer which performs ngram filtering on the data stream.",\r
+               "behaviours": [\r
+                       "Tokenize the text using white space characters as delimeters.",\r
+                       "Convert all characters to lower case.",\r
+                       "Convert all alphanumeric and symbolic Unicode characters above the first 127 ASCII characters into their ASCII equivalents.",\r
+                       "Apply ngram filtering using the following values for minimum and maximum size in codepoints of a single n-gram: minimum = 1, maximum = 2."\r
+               ],\r
+               "tokenizer": "whitespace",\r
+               "filters": [\r
+                       "lowercase",\r
+                       "asciifolding",\r
+                       "ngram_filter"\r
+               ]\r
+       }\r
 ]
\ No newline at end of file
index 72d8902..bbbe52f 100644 (file)
@@ -1,18 +1,18 @@
-{
-       "roles": [
-               {
-                       "name": "admin",
-                       "functions": [
-                               {
-                                       "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]
-                               }
-                       ],
-
-                       "users": [
-                               {
-                                       "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
-                               }
-                       ]
-               }               
-       ]
-}
+{\r
+       "roles": [\r
+               {\r
+                       "name": "admin",\r
+                       "functions": [\r
+                               {\r
+                                       "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]\r
+                               }\r
+                       ],\r
+\r
+                       "users": [\r
+                               {\r
+                                       "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"\r
+                               }\r
+                       ]\r
+               }               \r
+       ]\r
+}\r
index 532a9fb..809b22b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # ElasticSearch Configuration
 
 es.cluster-name=ES_AAI
index 93888be..b44b4ec 100644 (file)
@@ -1,20 +1,16 @@
 {
   "attr-translations": [
     {
-      "from": "\"type\":\"string\",\"index\":\"analyzed\"",
-      "to": "\"type\":\"text\",\"index\":\"true\""
+      "query": "$..[?(@.type=='string' && @.index=='analyzed')]",
+      "update": {"type": "text", "index": true, "fielddata": true}
     },
     {
-      "from": "\"type\":\"string\",\"index\":\"not_analyzed\"",
-      "to": "\"type\":\"keyword\",\"index\":\"true\""
+      "query": "$..[?(@.type=='string' && @.index=='not_analyzed')]",
+      "update": {"type": "keyword", "index": true}
     },
     {
-      "from": "\"type\":\"string\"",
-      "to": "\"type\":\"text\""
-    },
-    {
-      "from": "searchable",
-      "to": "index"
+      "query": "$..[?(@.type=='string' && !@.index)]",
+      "update": {"type": "text", "fielddata": true}
     }
   ]
 }
\ No newline at end of file
index e2d5285..a27f75b 100644 (file)
@@ -1,7 +1,7 @@
-[
-       {
-               "name": "ngram_filter",
-               "description": "Custom NGram Filter.",
-               "configuration": " \"type\": \"nGram\", \"min_gram\": 1, \"max_gram\": 50, \"token_chars\": [ \"letter\", \"digit\", \"punctuation\", \"symbol\" ]"
-       }
+[\r
+       {\r
+               "name": "ngram_filter",\r
+               "description": "Custom NGram Filter.",\r
+               "configuration": " \"type\": \"nGram\", \"min_gram\": 1, \"max_gram\": 50, \"token_chars\": [ \"letter\", \"digit\", \"punctuation\", \"symbol\" ]"\r
+       }\r
 ]
\ No newline at end of file
index 3fbbbab..adfed4a 100644 (file)
@@ -1,3 +1,19 @@
+<!--
+# Copyright © 2018 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.
+-->
+
 <configuration scan="true" scanPeriod="3 seconds" debug="false">
         <!--<jmxConfigurator /> -->
         <!-- directory path for all other type logs -->
index 0715f0d..2b3ec89 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: ConfigMap
 metadata:
index fe94e1e..dffc9cf 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 33b058f..77b3ce2 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Secret
 metadata:
index e342a9a..a49553e 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index 2c3a005..08bdbdb 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for search-data.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
@@ -9,7 +23,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/search-data-service:1.2.2
+image: onap/search-data-service:1.3-STAGING-latest
 pullPolicy: Always
 restartPolicy: Always
 
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 4d8a3a4..844ba8b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI sparky-be
 name: aai-sparky-be
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-default.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-default.properties
new file mode 100644 (file)
index 0000000..67a22f7
--- /dev/null
@@ -0,0 +1,16 @@
+# Copyright © 2018 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.
+
+oxm.apiVersion=v14
+oxm.apiVersionList=v8,v9,v10,v11,v12,v13,v14
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-override.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-override.properties
new file mode 100644 (file)
index 0000000..5c733e8
--- /dev/null
@@ -0,0 +1,16 @@
+# Copyright © 2018 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.
+
+oxm.apiVersionOverride=v14
+oxm.apiVersionList=v8,v9,v10,v11,v12,v13,v14
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-schema-prod.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/application-oxm-schema-prod.properties
new file mode 100644 (file)
index 0000000..98c7abd
--- /dev/null
@@ -0,0 +1,15 @@
+# Copyright © 2018 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.
+
+oxm.schemaNodeDir=/opt/app/sparky/onap/oxm
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/application-resources.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/application-resources.properties
new file mode 100644 (file)
index 0000000..f916da4
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright © 2018 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.
+
+resources.hostname=aai
+resources.port=8443
+resources.authType=SSL_BASIC
+resources.basicAuthUserName=AAI
+resources.basicAuthPassword=AAI
+resources.client-cert=client-cert-onap.p12
+resources.client-cert-password=1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+resources.trust-store=tomcat_keystore
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/application-ssl.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/application-ssl.properties
new file mode 100644 (file)
index 0000000..04a5096
--- /dev/null
@@ -0,0 +1,17 @@
+# Copyright © 2018 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.
+
+server.port=8000
+server.ssl.key-store=file:${CONFIG_HOME}/auth/tomcat_keystore
+server.ssl.key-store-password=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/application.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/application.properties
new file mode 100644 (file)
index 0000000..6aa64ff
--- /dev/null
@@ -0,0 +1,31 @@
+# Copyright © 2018 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.
+
+#
+# disable the default thyme leaf icon on web-pages
+#
+spring.mvc.favicon.enabled=false
+
+#
+# to switch to http, remove ssl and put http
+# and in the values.yaml change the internalPort to 9517
+#
+
+spring.profiles.active=camel,http,fe-prod,oxm-schema-prod,oxm-default,resources,sync
+
+searchservice.hostname={{.Values.global.searchData.serviceName}}
+searchservice.port=9509
+searchservice.client-cert=client-cert-onap.p12
+searchservice.client-cert-password=1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+searchservice.truststore=tomcat_keystore
index 2315b9f..6edc3d9 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 global.login.url=aaiportal.onap.org
 
 # MOTS ID of the application
@@ -9,4 +23,4 @@ redirect-domain=domain.com
 # Required by esGateKeeper. Valid values are:
 # DEVL - used during development
 # PROD - used in production
-gatekeeper.environment=TEST
\ No newline at end of file
+gatekeeper.environment=TEST
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-filter-aggregation.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-filter-aggregation.xml
deleted file mode 100644 (file)
index e4e02ba..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<rests xmlns="http://camel.apache.org/schema/spring">
-   <rest>
-      <post uri="/search/filterAggregation">
-         <to uri="bean:aggregateSummaryProcessor?method=getFilteredAggregation"/>
-      </post>
-   </rest>
-</rests>
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-prepareSchema.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-prepareSchema.xml
deleted file mode 100644 (file)
index 20dba6f..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<rests xmlns="http://camel.apache.org/schema/spring">
-       <rest>
-               <post uri="/visualization/prepareVisualization">
-                       <route>
-                               <to uri="bean:schemaVisualizationProcessor?method=processVisualizationRequest" />
-                       </route>
-               </post>
-       </rest>
-</rests>
-
-         
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-subscriptionService.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-subscriptionService.xml
deleted file mode 100644 (file)
index f6a2953..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<rests xmlns="http://camel.apache.org/schema/spring">
-   <rest>
-      <get uri="/subscription/getsubscription">
-         <to uri="bean:subscriptionServiceProcessor?method=getSubscription"/>
-      </get>
-   </rest>
-</rests>
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unified-search.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unified-search.xml
deleted file mode 100644 (file)
index 61fd9ad..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<rests xmlns="http://camel.apache.org/schema/spring">
-   <rest>
-      <post uri="/search/querysearch">
-         <to uri="bean:unifiedSearchProcessor?method=search"/>
-      </post>
-   </rest>
-</rests>
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unifiedFilterRequest.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unifiedFilterRequest.xml
deleted file mode 100644 (file)
index 1b975e9..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<rests xmlns="http://camel.apache.org/schema/spring">
-   <rest>
-      <post uri="/search/unifiedFilterRequest">
-         <to uri="bean:filterProcessor?method=getFiltersWithValues"/>
-      </post>
-   </rest>
-</rests>
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/descriptors/aaiEntityNodeDescriptors.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/descriptors/aaiEntityNodeDescriptors.json
deleted file mode 100644 (file)
index e72bab0..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-{
-       "generalNodeClass": {
-               "class": "aai-entity-node general-node",
-               "visualElements": [{
-                       "type": "circle",
-                       "class": "outer",
-                       "svgAttributes": {
-                               "r": "16"
-                       }
-               },
-               {
-                       "type": "circle",
-                       "class": "inner",
-                       "svgAttributes": {
-                               "r": "10"
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-type-label",
-                       "displayKey": "itemType",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "33"
-                               }
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-value-label",
-                       "displayKey": "itemNameValue",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "48"
-                               }
-                       }
-               }]
-       },
-       "searchedNodeClass": {
-               "class": "aai-entity-node search-node",
-               "visualElements": [{
-                       "type": "circle",
-                       "class": "outer",
-                       "svgAttributes": {
-                               "r": "16"
-                       }
-               },
-               {
-                       "type": "circle",
-                       "class": "inner",
-                       "svgAttributes": {
-                               "r": "10"
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-type-label",
-                       "displayKey": "itemType",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "33"
-                               }
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-value-label",
-                       "displayKey": "itemNameValue",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "48"
-                               }
-                       }
-               }]
-       },
-       "selectedSearchedNodeClass": {
-               "class": "aai-entity-node selected-search-node",
-               "visualElements": [{
-                       "type": "circle",
-                       "class": "outer",
-                       "svgAttributes": {
-                               "r": "31"
-                       }
-               },
-               {
-                       "type": "circle",
-                       "class": "inner",
-                       "svgAttributes": {
-                               "r": "20"
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-type-label",
-                       "displayKey": "itemType",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "48"
-                               }
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-value-label",
-                       "displayKey": "itemNameValue",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "63"
-                               }
-                       }
-               },
-               {
-                       "type": "button",
-                       "name": "icon_ellipses",
-                       "class": "node-button",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "33",
-                                       "y": "-35"
-                               }
-                       },
-                       "svgAttributes": {
-                               "className": "node-button",
-                               "r": "10"
-                       }
-               },
-               {
-                       "type": "button",
-                       "name": "icon_triangle_warning",
-                       "class": "node-button",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "46",
-                                       "y": "-12"
-                               }
-                       },
-                       "svgAttributes": {
-                               "className": "node-button",
-                               "r": "10"
-                       }
-               }]
-       },
-       "selectedNodeClass": {
-               "class": "aai-entity-node selected-node",
-               "visualElements": [{
-                       "type": "circle",
-                       "class": "outer",
-                       "svgAttributes": {
-                               "r": "31"
-                       }
-               },
-               {
-                       "type": "circle",
-                       "class": "inner",
-                       "svgAttributes": {
-                               "r": "20"
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-type-label",
-                       "displayKey": "itemType",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "48"
-                               }
-                       }
-               },
-               {
-                       "type": "text",
-                       "class": "id-value-label",
-                       "displayKey": "itemNameValue",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "0",
-                                       "y": "63"
-                               }
-                       }
-               },
-               {
-                       "type": "button",
-                       "name": "icon_ellipses",
-                       "class": "node-button",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "33",
-                                       "y": "-35"
-                               }
-                       },
-                       "svgAttributes": {
-                               "className": "node-button",
-                               "r": "10"
-                       }
-               },
-               {
-                       "type": "button",
-                       "name": "icon_triangle_warning",
-                       "class": "node-button",
-                       "shapeAttributes": {
-                               "offset": {
-                                       "x": "46",
-                                       "y": "-12"
-                               }
-                       },
-                       "svgAttributes": {
-                               "className": "node-button",
-                               "r": "10"
-                       }
-               }]
-       }
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_filters.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_filters.json
deleted file mode 100644 (file)
index 62b6811..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-{
-       "filters": [
-       {
-               "filterId": "1",
-               "filterName": "Orchestration-Status",
-               "displayName": "Orchestration Status",
-               "dataType": "dropDown",
-        "multiSelect": "false",
-        "watermark": "Any Orchestration Status",
-        "optionsType": "options",
-               "dataSource": {
-                       "indexName": "aggregate_generic-vnf_index",
-                       "docType": "default",
-                       "fieldName": "orchestration-status"
-               }
-       },
-       {
-               "filterId": "2",
-               "filterName": "Prov-Status",
-               "displayName": "Provisioning Status",
-               "dataType": "dropDown",
-        "multiSelect": "false",
-        "watermark": "Any Provisioning Status",
-        "optionsType": "options",
-               "dataSource": {
-                       "indexName": "aggregate_generic-vnf_index",
-                       "docType": "default",
-                       "fieldName": "prov-status"
-               }
-       },
-       {
-               "filterId": "5",
-               "filterName": "Date",
-               "displayName": "Date",
-               "dataType": "date",
-        "multiSelect": "false",
-        "watermark": "Choose Date Range",
-        "defaultValue" : {"decode": "Today", "code": "last_0_hours"},
-        "optionsType": "dynamicOptions",
-        "optionsValues": [
-               {"decode": "Today", "code": "last_0_hours"},
-               {"decode": "Since Yesterday", "code": "last_1_days"},
-               {"decode": "Since Last Week", "code": "last_1_weeks"},
-               {"decode": "Since Last Month", "code": "last_1_months"},
-               {"decode": "Since Last Year", "code": "last_1_years"},
-               {"decode": "Custom Range", "code": "custom_range"}
-        ]
-       },
-    {
-        "filterId": "7",
-               "filterName": "NF-Type",
-               "displayName": "Network Function Type",
-               "dataType": "dropDown",
-        "multiSelect": "false",
-        "watermark": "Any Network Function Type",
-        "optionsType": "options",
-               "dataSource": {
-                       "indexName": "aggregate_generic-vnf_index",
-                       "docType": "default",
-                       "fieldName": "nf-type"
-               }    
-       },
-    {
-        "filterId": "8",
-               "filterName": "NF-Role",
-               "displayName": "Network Function Role",
-               "dataType": "dropDown",
-        "multiSelect": "false",
-        "watermark": "Any Network Function Role",
-        "optionsType": "options",
-               "dataSource": {
-                       "indexName": "aggregate_generic-vnf_index",
-                       "docType": "default",
-                       "fieldName": "nf-role"
-               }    
-       }       
-       
-  ]
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_views.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_views.json
deleted file mode 100644 (file)
index 9ca0119..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-    "views": [
-    {
-        "viewName" : "vnfSearch",
-        "filters" : [
-          {
-             "filterId": "1"
-          },
-          {
-             "filterId": "2"
-          },
-          {
-             "filterId": "7"
-          },
-          {
-             "filterId": "8"
-          }
-         ]
-    }
-   ]
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/subscription_object_inspector_mapping.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/subscription_object_inspector_mapping.json
deleted file mode 100644 (file)
index ad2ab7a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-    "target": "",
-    "origin": "",
-    "messageType": "",
-    "topic": "",
-    "message": {
-        "applicationName": "",
-        "payload": {
-            "action": "",
-            "params": {
-                "objectName": "",
-                "externalClassId": ""
-            }
-        }
-    }
-}
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/log/logback.xml
deleted file mode 100644 (file)
index 3f96497..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-<configuration scan="true" scanPeriod="3 seconds" debug="false">
-       <!--<jmxConfigurator /> -->
-       <!-- directory path for all other type logs -->
-
-       <property name="logDir" value="/var/log/onap" />
-
-       <!-- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" 
-               | "SDNC" | "AC" -->
-       <property name="componentName" value="AAI-UI"></property>
-
-       <!-- default eelf log file names -->
-       <property name="generalLogName" value="error" />
-       <property name="metricsLogName" value="metrics" />
-       <property name="auditLogName" value="audit" />
-       <property name="debugLogName" value="debug" />
-
-       <property name="errorLogPattern"
-               value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{RequestId}|%thread|AAIUI|%mdc{PartnerName}|%logger|%.-5level|%msg%n" />
-       <property name="auditMetricPattern" value="%m%n" />
-
-       <property name="logDirectory" value="${logDir}/${componentName}" />
-
-
-       <!-- Example evaluator filter applied against console appender -->
-       <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-               <encoder>
-                       <pattern>${errorLogPattern}</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>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip
-                       </fileNamePattern>
-                       <maxHistory>60</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${errorLogPattern}</pattern>
-               </encoder>
-       </appender>
-       <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
-               <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
-               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-                       <level>INFO</level>
-               </filter>
-               <queueSize>256</queueSize>
-               <appender-ref ref="EELF" />
-       </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.TimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip
-                       </fileNamePattern>
-                       <maxHistory>60</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${auditMetricPattern}</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.TimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip
-                       </fileNamePattern>
-                       <maxHistory>60</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n"</pattern> -->
-                       <pattern>${auditMetricPattern}</pattern>
-               </encoder>
-       </appender>
-
-
-       <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <appender-ref ref="EELFMetrics" />
-       </appender>
-
-       <appender name="EELFDebug"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <file>${logDirectory}/${debugLogName}.log</file>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip
-                       </fileNamePattern>
-                       <maxHistory>60</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${errorLogPattern}</pattern>
-               </encoder>
-       </appender>
-
-       <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <appender-ref ref="EELFDebug" />
-               <includeCallerData>false</includeCallerData>
-       </appender>
-
-       <!-- ============================================================================ -->
-       <!-- EELF loggers -->
-       <!-- ============================================================================ -->
-       <logger name="com.att.eelf" level="info" additivity="false">
-               <appender-ref ref="asyncEELF" />
-               <appender-ref ref="asyncEELFDebug" />
-       </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>
-
-       <!-- Spring related loggers -->
-       <logger name="org.springframework" level="WARN" />
-       <logger name="org.springframework.beans" level="WARN" />
-       <logger name="org.springframework.web" level="WARN" />
-       <logger name="com.blog.spring.jms" level="WARN" />
-
-       <!-- Sparky loggers -->
-       <logger name="org.onap" level="INFO" />
-
-       <!-- Other Loggers that may help troubleshoot -->
-       <logger name="net.sf" level="WARN" />
-       <logger name="org.apache.commons.httpclient" level="WARN" />
-       <logger name="org.apache.commons" level="WARN" />
-       <logger name="org.apache.coyote" level="WARN" />
-       <logger name="org.apache.jasper" level="WARN" />
-
-       <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. 
-               May aid in troubleshooting) -->
-       <logger name="org.apache.camel" level="WARN" />
-       <logger name="org.apache.cxf" level="WARN" />
-       <logger name="org.apache.camel.processor.interceptor" level="WARN" />
-       <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
-       <logger name="org.apache.cxf.service" level="WARN" />
-       <logger name="org.restlet" level="WARN" />
-       <logger name="org.apache.camel.component.restlet" level="WARN" />
-
-       <!-- logback internals logging -->
-       <logger name="ch.qos.logback.classic" level="WARN" />
-       <logger name="ch.qos.logback.core" level="WARN" />
-
-       <root>
-               <appender-ref ref="asyncEELF" />
-               <!-- <appender-ref ref="asyncEELFDebug" /> -->
-       </root>
-
-</configuration>
index 35b714a..aa16b1b 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 ################################################################################
 ############################## Portal properties ###############################
 ################################################################################
index a0e3308..ac09f9b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
 #####################################################################################\r
 ##############################  Portal Auth Properties ##############################\r
 #####################################################################################\r
index b8313bd..ee131d8 100644 (file)
@@ -1,6 +1,20 @@
+# Copyright © 2018 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.
+
 [
   {
     "id":1,
     "name":"View"
   }
-]
\ No newline at end of file
+]
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/roles.config b/kubernetes/aai/charts/aai-sparky-be/resources/config/roles.config
deleted file mode 100644 (file)
index 4d5d43e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-[\r
-  {\r
-    "id":1,\r
-    "name":"View"\r
-  }\r
-]
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestMappings.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestMappings.json
deleted file mode 100644 (file)
index 7857617..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-{
-       "properties" : {
-               "entity_suggest" : {
-               "type" : "completion",
-                     "payloads" : true,
-                         "analyzer" : "custom_analyzer",
-                         "preserve_position_increments": false
-               }
-       }
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestSettings.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestSettings.json
deleted file mode 100644 (file)
index 4525be1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-        "analysis": {
-               "filter": {
-                "eng_stop": {
-                    "type":       "stop",
-                    "stopwords": "_english_"
-                }
-            },
-               "analyzer": {
-                   "custom_analyzer": {
-                       "type": "custom",
-                       "tokenizer": "standard",
-                       "filter": [
-                               "lowercase",
-                           "asciifolding",
-                           "eng_stop"
-                       ]
-                   }
-               }
-       }
-   }
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/dynamicMappings.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/dynamicMappings.json
deleted file mode 100644 (file)
index 09a00ac..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "dynamic_templates": [
-       {
-         "strings": {
-               "match_mapping_type": "string",
-               "match": "*",
-               "mapping": {
-                 "type": "string",
-                 "index": "not_analyzed"
-               }
-         }
-       }
-  ]
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/entityCountHistoryMappings.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/entityCountHistoryMappings.json
deleted file mode 100644 (file)
index 84e3aec..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-    "properties": {
-        "count": {
-           "type": "long"
-        },
-        "entityType": {
-            "type": "string",
-            "index": "not_analyzed"
-        },
-        "timestamp": {
-            "type": "date",
-            "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
-        }
-    }
-}
-
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_mappings.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_mappings.json
deleted file mode 100644 (file)
index 216e3d9..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-{
-    "properties": {
-        "entityType": {
-            "type": "string",
-            "analyzer": "ngram_analyzer",
-            "search_analyzer": "ngram_analyzer"
-        },
-        "entityPrimaryKeyValue": {
-            "type": "string",
-            "index": "not_analyzed"
-        },
-        "searchTagIDs": {
-            "type": "string"
-        },
-        "searchTags": {
-            "type": "string",
-            "analyzer": "ngram_analyzer"
-        },
-        "crossEntityReferenceValues": {
-            "type": "string",
-            "analyzer": "ngram_analyzer"
-        },
-        "link": {
-            "type": "string",
-            "index": "not_analyzed"
-       },
-        "lastmodTimestamp": {
-            "type": "date",
-            "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||yyyy-MM-dd HH:mm:ss||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
-        }
-    }
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_settings.json b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_settings.json
deleted file mode 100644 (file)
index 21a357c..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-{
-    "analysis": {
-        "filter": {
-            "ngram_filter": {
-                "type": "nGram",
-                "min_gram": 1,
-                "max_gram": 50,
-                "token_chars": [
-                    "letter",
-                    "digit",
-                    "punctuation",
-                    "symbol"
-                ]
-            }
-        },
-        "analyzer": {
-            "ngram_analyzer": {
-                "type": "custom",
-                "tokenizer": "whitespace",
-                "filter": [
-                    "lowercase",
-                    "asciifolding",
-                    "ngram_filter"
-                ]
-            },
-            "whitespace_analyzer": {
-                "type": "custom",
-                "tokenizer": "whitespace",
-                "filter": [
-                    "lowercase",
-                    "asciifolding"
-                ]
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-application.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-application.properties
deleted file mode 100644 (file)
index b246676..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-camel.springboot.name = SparkyCamelContext
-#camel.springboot.xmlRoutes = file:${CONFIG_HOME}/camel-routes/*.route
-camel.springboot.xmlRests = file:${CONFIG_HOME}/camel-rests/*.xml
-
-camel.component.servlet.mapping.context-path=/rest/*
-server.servlet.context-path=/services/aai/webapp/
-
-#
-#  attempt to externalize ui JS classes + resources
-#
-spring.resources.static-locations=file:${APP_HOME}/static/
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-http-config.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-http-config.properties
deleted file mode 100644 (file)
index f81a597..0000000
+++ /dev/null
@@ -1 +0,0 @@
-server.port = 9517
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-ssl-config.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-ssl-config.properties
deleted file mode 100644 (file)
index b9e5d16..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-server.port = 8000
-server.ssl.key-store=file:${CONFIG_HOME}/auth/tomcat_keystore
-server.ssl.key-alias=tomcat
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-aggregateVnfSearchProvider.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-aggregateVnfSearchProvider.xml
deleted file mode 100644 (file)
index 694ea1b..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="
-         http://www.springframework.org/schema/beans
-         http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-         <bean id="aggregateVnfSearchProvider"
-            class="org.onap.aai.sparky.aggregatevnf.search.AggregateVnfSearchProvider">
-            <constructor-arg ref="searchServiceAdapter"/>
-            <constructor-arg name="autoSuggestIndexName" value="entityautosuggestindex"/>
-            <constructor-arg name="vnfSearchSuggestionRoute" value="vnfSearch"/>
-          </bean>
-
-          <bean id="aggregateSummaryProcessor"
-            class="org.onap.aai.sparky.aggregatevnf.search.AggregateSummaryProcessor">
-            <constructor-arg ref="elasticSearchAdapter"/>
-            <constructor-arg ref="filtersConfig"/>
-            <property name="vnfAggregationIndexName" value="aggregate_generic-vnf_index"/>
-          </bean>
-
-          <bean id="registerAggregateVnfSearchProvider"
-            class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
-            <property name="targetObject" ref="searchProviderRegistry"/>
-            <property name="targetMethod">
-              <value>addSearchProviders</value>
-            </property>
-            <property name="arguments">
-              <list value-type="org.onap.aai.sparky.search.api.SearchProvider">
-                <ref bean="aggregateVnfSearchProvider"/>
-              </list>
-            </property>
-          </bean>
-</beans>
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-apigw.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-apigw.xml
deleted file mode 100644 (file)
index 8b5f277..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="
-              http://www.springframework.org/schema/beans
-              http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-       <bean id="synapseRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
-               <property name="endpointIpAddress" value="aai.synapse.simpledemo.openecomp.org" />
-               <property name="endpointServerPort" value="9502" />
-               <property name="numRequestRetries" value="5" />
-               <property name="restAuthenticationMode" value="SSL_CERT" />
-               <property name="connectTimeoutInMs" value="60000" />
-               <property name="readTimeoutInMs" value="30000" />
-               <property name="certFileName" value="/auth/client-cert-onap.p12" />
-               <property name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
-               <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
-               <property name="validateServerCertChain" value="false" />
-               <property name="validateServerHostname" value="false" />
-               <property name="resourceLoader" ref="sparkyResourceLoader" />
-               
-       </bean>
-
-       <bean id="aaiuiProxyProcessor"
-               class="org.onap.aai.sparky.dal.proxy.processor.AaiUiProxyProcessor">
-               <constructor-arg ref="synapseRestEndpointConfig" />
-               <constructor-arg name="apiGatewayEndpoint" value="ui-request" />
-       </bean>
-
-</beans>
-
-
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-gizmo.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-gizmo.xml
deleted file mode 100644 (file)
index dedd7e2..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="
-              http://www.springframework.org/schema/beans
-              http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-       <bean id="gizmoRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
-               <property name="endpointIpAddress" value="{{.Values.global.gizmo.serviceName}}.{{.Release.Namespace}}" />
-               <property name="endpointServerPort" value="9520" />
-               <property name="numRequestRetries" value="5" />
-               <property name="restAuthenticationMode" value="SSL_CERT" />
-               <property name="connectTimeoutInMs" value="60000" />
-               <property name="readTimeoutInMs" value="30000" />
-               <property name="certFileName" value="/auth/client-cert-onap.p12" />
-               <property name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
-               <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
-               <property name="validateServerCertChain" value="false" />
-               <property name="validateServerHostname" value="false" />
-               <property name="resourceLoader" ref="sparkyResourceLoader" />
-       </bean>
-
-       <bean id="gizmoAdapter" class="org.onap.aai.sparky.dal.GizmoAdapter">
-               <constructor-arg ref="oxmModelLoader" />
-               <constructor-arg ref="gizmoRestEndpointConfig" />
-               <property name="relationshipsBasePath" value="/services/inventory/relationships/v13/" />
-               <property name="inventoryBasePath" value="/services/inventory/v13/" />
-       </bean>
-
-</beans>               
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-sync.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-sync.xml
deleted file mode 100644 (file)
index 29eb4a3..0000000
+++ /dev/null
@@ -1,373 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="
-              http://www.springframework.org/schema/beans
-              http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-       <bean id="elasticSearchSchemaFactory" class="org.onap.aai.sparky.sync.ElasticSearchSchemaFactory">
-               <property name="resourceLoader" ref="sparkyResourceLoader" />
-       </bean> 
-
-
-    <bean id="elasticSearchRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
-       <property name="endpointIpAddress" value="{{.Values.global.aaiElasticsearch.serviceName}}.{{.Release.Namespace}}" />
-       <property name="endpointServerPort" value="9200" />
-       <property name="numRequestRetries" value="5" />
-       <property name="restAuthenticationMode" value="HTTP_NOAUTH" />
-       <property name="connectTimeoutInMs" value="60000" />
-       <property name="readTimeoutInMs" value="30000" />
-    </bean>
-              
-       <bean id="elasticSearchAdapter" class="org.onap.aai.sparky.dal.ElasticSearchAdapter">
-               <constructor-arg ref="elasticSearchRestEndpointConfig" />
-       </bean>
-
-       <bean id="elasticSearchNetworkStatConfig" class="org.onap.aai.sparky.sync.config.NetworkStatisticsConfig">
-               <property name="numSamplesPerThreadForRunningAverage" value="100" />
-               <property name="bytesHistogramLabel" value="[Response Size In Bytes]" />
-               <property name="bytesHistogramMaxYAxis" value="1000000" />
-               <property name="bytesHistogramNumBins" value="20" />
-               <property name="bytesHistogramNumDecimalPoints" value="2" />
-               <property name="queueLengthHistogramLabel" value="[Queue Item Length]" />
-               <property name="queueLengthHistogramMaxYAxis" value="20000" />
-               <property name="queueLengthHistogramNumBins" value="20" />
-               <property name="queueLengthHistogramNumDecimalPoints" value="2" />
-               <property name="taskAgeHistogramLabel" value="[Task Age In Ms]" />
-               <property name="taskAgeHistogramMaxYAxis" value="600000" />
-               <property name="taskAgeHistogramNumBins" value="20" />
-               <property name="taskAgeHistogramNumDecimalPoints" value="2" />
-               <property name="responseTimeHistogramLabel" value="[Response Time In Ms]" />
-               <property name="responseTimeHistogramMaxYAxis" value="1000" />
-               <property name="responseTimeHistogramNumBins" value="20" />
-               <property name="responseTimeHistogramNumDecimalPoints" value="2" />
-               <property name="tpsHistogramLabel" value="[Transactions Per Second]" />
-               <property name="tpsHistogramMaxYAxis" value="100" />
-               <property name="tpsHistogramNumBins" value="20" />
-               <property name="tpsHistogramNumDecimalPoints" value="2" />
-       </bean>
-
-       <bean id="aaiNetworkStatConfig" class="org.onap.aai.sparky.sync.config.NetworkStatisticsConfig">
-               <property name="numSamplesPerThreadForRunningAverage" value="100" />
-               <property name="bytesHistogramLabel" value="[Response Size In Bytes]" />
-               <property name="bytesHistogramMaxYAxis" value="1000000" />
-               <property name="bytesHistogramNumBins" value="20" />
-               <property name="bytesHistogramNumDecimalPoints" value="2" />
-               <property name="queueLengthHistogramLabel" value="[Queue Item Length]" />
-               <property name="queueLengthHistogramMaxYAxis" value="20000" />
-               <property name="queueLengthHistogramNumBins" value="20" />
-               <property name="queueLengthHistogramNumDecimalPoints" value="2" />
-               <property name="taskAgeHistogramLabel" value="[Task Age In Ms]" />
-               <property name="taskAgeHistogramMaxYAxis" value="600000" />
-               <property name="taskAgeHistogramNumBins" value="20" />
-               <property name="taskAgeHistogramNumDecimalPoints" value="2" />
-               <property name="responseTimeHistogramLabel" value="[Response Time In Ms]" />
-               <property name="responseTimeHistogramMaxYAxis" value="10000" />
-               <property name="responseTimeHistogramNumBins" value="20" />
-               <property name="responseTimeHistogramNumDecimalPoints" value="2" />
-               <property name="tpsHistogramLabel" value="[Transactions Per Second]" />
-               <property name="tpsHistogramMaxYAxis" value="100" />
-               <property name="tpsHistogramNumBins" value="20" />
-               <property name="tpsHistogramNumDecimalPoints" value="2" />
-       </bean>
-
-    <bean id="aaiRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
-       <property name="endpointIpAddress" value="{{.Values.global.aai.serviceName}}" />
-       <property name="endpointServerPort" value="8443" />
-       <property name="numRequestRetries" value="5" />
-       <property name="restAuthenticationMode" value="SSL_BASIC" />
-       <property name="connectTimeoutInMs" value="60000" />
-       <property name="readTimeoutInMs" value="30000" />
-       <property name="basicAuthUserName" value="AaiUI" />
-       <property name="basicAuthPassword" value="OBF:1gfr1p571unz1p4j1gg7" />
-       <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
-       <property name="validateServerCertChain" value="false" />
-       <property name="validateServerHostname" value="false" />
-       <property name="resourceLoader" ref="sparkyResourceLoader" />
-    </bean>
-
-       <bean id="activeInventoryAdapter" class="org.onap.aai.sparky.dal.ActiveInventoryAdapter">
-               <constructor-arg ref="oxmModelLoader" />
-               <constructor-arg ref="oxmEntityLookup" />
-               <constructor-arg ref="aaiRestEndpointConfig" />
-       </bean>
-
-       <bean id="syncControllerRegistry" class="org.onap.aai.sparky.sync.SyncControllerRegistry" />
-
-       <bean id="elasticSearchEndpointConfig"
-               class="org.onap.aai.sparky.sync.config.ElasticSearchEndpointConfig">
-               <property name="esIpAddress" value="{{.Values.global.aaiElasticsearch.serviceName}}.{{.Release.Namespace}}" />
-               <property name="esServerPort" value="9200" />
-               <property name="scrollContextTimeToLiveInMinutes" value="5" />
-               <property name="scrollContextBatchRequestSize" value="5000" />
-       </bean>
-       
-       <bean id="aggregationSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
-               <property name="controllerName" value="Aggregation-Sync-Controller" />
-               <property name="enabled" value="true" />
-               <property name="syncTaskDelayInMs" value="5000" />
-               <property name="syncTaskFrequencyInDays" value="1" />
-               <property name="numSyncControllerWorkers" value="2" />
-               <property name="runOnceSyncEnabled" value="true" />
-               <property name="periodicSyncEnabled" value="false" />
-               <property name="numInternalSyncWorkers" value="2" />
-               <property name="numSyncElasticWorkers" value="5" />
-               <property name="numSyncActiveInventoryWorkers" value="5" />
-               <property name="targetSyncStartTimeStamp" value="05:00:00 UTC+00:00" />
-       </bean>
-
-       <bean id="aggregationSyncControllerFactory"
-               class="org.onap.aai.sparky.aggregation.sync.AggregationSyncControllerFactory"
-               init-method="registerController">
-
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg ref="aggregationSyncControllerConfig" />
-               <constructor-arg ref="syncControllerRegistry" />
-               <constructor-arg ref="suggestionEntityLookup" />
-               <constructor-arg ref="oxmEntityLookup" />
-               <constructor-arg ref="elasticSearchSchemaFactory" />
-
-               <property name="esAdapter" ref="elasticSearchAdapter" />
-               <property name="esStatConfig" ref="elasticSearchNetworkStatConfig" />
-
-               <property name="aaiAdapter" ref="activeInventoryAdapter" />
-               <property name="aaiStatConfig" ref="aaiNetworkStatConfig" />
-
-               <property name="aggregationEntityToIndexMap">
-                       <map>
-                               <entry key="generic-vnf" value="aggregate_generic-vnf_index" />
-                       </map>
-               </property>
-
-               <property name="indexNameToSchemaConfigMap">
-                       <map>
-                               <entry key="aggregate_generic-vnf_index">
-                                       <bean class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
-                                               <property name="indexName" value="aggregate-vnf-index" />
-                                               <property name="indexDocType" value="default" />
-                                               <property name="indexMappingsFileName" value="/schemas/dynamicMappings.json" />
-                                       </bean>
-                               </entry>
-                       </map>
-               </property>
-
-       </bean>
-
-
-       <bean id="historicalEntitySyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
-
-               <property name="controllerName" value="Historical-Entity-Sync-Controller" />
-               <property name="enabled" value="true" />
-               <property name="syncTaskDelayInMs" value="5000" />
-               <property name="syncTaskFrequencyInDays" value="1" />
-               <property name="numSyncControllerWorkers" value="2" />
-               <property name="runOnceSyncEnabled" value="true" />
-               <property name="periodicSyncEnabled" value="false" />
-               <property name="numInternalSyncWorkers" value="2" />
-               <property name="numSyncElasticWorkers" value="5" />
-               <property name="numSyncActiveInventoryWorkers" value="5" />
-               <property name="targetSyncStartTimeStamp" value="05:00:00 UTC+00:00" />
-       </bean>
-
-       <bean id="historicalEntitySchemaConfig" class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
-               <property name="indexName" value="entitycounthistoryindex" />
-               <property name="indexDocType" value="default" />
-               <property name="indexMappingsFileName" value="/schemas/entityCountHistoryMappings.json" />
-               <property name="indexSettingsFileName" value="/schemas/es_settings.json" />
-       </bean>
-
-       <bean id="historicalEntitySyncController"
-               class="org.onap.aai.sparky.aggregation.sync.HistoricalEntitySyncController"
-               init-method="registerController">
-
-               <constructor-arg ref="historicalEntitySyncControllerConfig" />
-               <constructor-arg ref="activeInventoryAdapter" />
-               <constructor-arg ref="elasticSearchAdapter" />
-               <constructor-arg ref="historicalEntitySchemaConfig" />
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg value="60" />
-               <constructor-arg ref="aaiNetworkStatConfig" />
-               <constructor-arg ref="elasticSearchNetworkStatConfig" />
-               <constructor-arg ref="searchableEntityLookup" />
-               <constructor-arg ref="elasticSearchSchemaFactory" />
-
-               <property name="syncControllerRegistry" ref="syncControllerRegistry" />
-
-       </bean>
-       
-       
-       
-       <bean id="autoSuggestionSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
-
-               <property name="controllerName" value="Auto-Suggestion-Sync-Controller" />
-               <property name="enabled" value="true" />
-               <property name="syncTaskDelayInMs" value="5000" />
-               <property name="syncTaskFrequencyInDays" value="1" />
-               <property name="numSyncControllerWorkers" value="2" />
-               <property name="runOnceSyncEnabled" value="true" />
-               <property name="periodicSyncEnabled" value="false" />
-               <property name="numInternalSyncWorkers" value="2" />
-               <property name="numSyncElasticWorkers" value="5" />
-               <property name="numSyncActiveInventoryWorkers" value="5" />
-               <property name="targetSyncStartTimeStamp" value="05:00:00 UTC+00:00" />
-       </bean>
-
-       <bean id="autoSuggestionEntitySchemaConfig" class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
-               <property name="indexName" value="entity-autosuggest-index" />
-               <property name="indexDocType" value="default" />
-               <property name="indexMappingsFileName" value="/schemas/autoSuggestMappings.json" />
-               <property name="indexSettingsFileName" value="/schemas/autoSuggestSettings.json" />
-       </bean>
-
-       <bean id="autoSuggestionEntitySyncController"
-               class="org.onap.aai.sparky.autosuggestion.sync.AutoSuggestionSyncController"
-               init-method="registerController">
-
-               <constructor-arg ref="autoSuggestionSyncControllerConfig" />
-               <constructor-arg ref="activeInventoryAdapter" />
-               <constructor-arg ref="elasticSearchAdapter" />
-               <constructor-arg ref="autoSuggestionEntitySchemaConfig" />
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg ref="aaiNetworkStatConfig" />
-               <constructor-arg ref="elasticSearchNetworkStatConfig" />
-               <constructor-arg ref="oxmEntityLookup" />
-               <constructor-arg ref="suggestionEntityLookup" />
-               <constructor-arg ref="filtersConfig" />
-               <constructor-arg ref="elasticSearchSchemaFactory" />
-
-               <property name="syncControllerRegistry" ref="syncControllerRegistry" />
-
-       </bean>
-       
-       
-       
-       <bean id="vnfAliasSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
-
-               <property name="controllerName" value="Vnf-Alias-Sync-Controller" />
-               <property name="enabled" value="true" />
-               <property name="syncTaskDelayInMs" value="5000" />
-               <property name="syncTaskFrequencyInDays" value="1" />
-               <property name="numSyncControllerWorkers" value="2" />
-               <property name="runOnceSyncEnabled" value="true" />
-               <property name="periodicSyncEnabled" value="false" />
-               <property name="numInternalSyncWorkers" value="2" />
-               <property name="numSyncElasticWorkers" value="5" />
-               <property name="numSyncActiveInventoryWorkers" value="5" />
-               <property name="targetSyncStartTimeStamp" value="05:00:00 UTC+00:00" />
-       </bean>
-
-       <bean id="vnfAliasEntitySchemaConfig" class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
-               <property name="indexName" value="entityautosuggestindex" />
-               <property name="indexDocType" value="default" />
-               <property name="indexMappingsFileName" value="/schemas/autoSuggestMappings.json" />
-               <property name="indexSettingsFileName" value="/schemas/autoSuggestSettings.json" />
-       </bean>
-
-       <bean id="vnfAliasSyncController"
-               class="org.onap.aai.sparky.autosuggestion.sync.VnfAliasSyncController"
-               init-method="registerController">
-
-               <constructor-arg ref="vnfAliasSyncControllerConfig" />
-               <constructor-arg ref="activeInventoryAdapter" />
-               <constructor-arg ref="elasticSearchAdapter" />
-               <constructor-arg ref="vnfAliasEntitySchemaConfig" />
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg ref="aaiNetworkStatConfig" />
-               <constructor-arg ref="elasticSearchNetworkStatConfig" />
-               <constructor-arg ref="filtersConfig" />
-               <constructor-arg ref="elasticSearchSchemaFactory" />
-
-               <property name="syncControllerRegistry" ref="syncControllerRegistry" />
-
-       </bean>
-       
-       <bean id="geoSyncControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
-
-               <property name="controllerName" value="Geo-Sync-Controller" />
-               <property name="enabled" value="true" />
-               <property name="syncTaskDelayInMs" value="5000" />
-               <property name="syncTaskFrequencyInDays" value="1" />
-               <property name="numSyncControllerWorkers" value="2" />
-               <property name="runOnceSyncEnabled" value="true" />
-               <property name="periodicSyncEnabled" value="false" />
-               <property name="numInternalSyncWorkers" value="2" />
-               <property name="numSyncElasticWorkers" value="5" />
-               <property name="numSyncActiveInventoryWorkers" value="5" />
-               <property name="targetSyncStartTimeStamp" value="05:00:00 UTC+00:00" />
-       </bean>
-
-       <bean id="geoEntitySchemaConfig" class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
-               <property name="indexName" value="topography-search-index" />
-               <property name="indexDocType" value="default" />
-               <property name="indexMappingsFileName" value="/schemas/dynamicMappings.json" />
-       </bean>
-
-       <bean id="geoSyncController"
-               class="org.onap.aai.sparky.topology.sync.GeoSyncController"
-               init-method="registerController">
-
-               <constructor-arg ref="geoSyncControllerConfig" />
-               <constructor-arg ref="activeInventoryAdapter" />
-               <constructor-arg ref="elasticSearchAdapter" />
-               <constructor-arg ref="geoEntitySchemaConfig" />
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg ref="aaiNetworkStatConfig" />
-               <constructor-arg ref="elasticSearchNetworkStatConfig" />
-               <constructor-arg ref="geoEntityLookup" />
-               <constructor-arg ref="oxmEntityLookup" />
-               <constructor-arg ref="elasticSearchSchemaFactory" />
-
-               <property name="syncControllerRegistry" ref="syncControllerRegistry" />
-
-       </bean>
-       
-       <bean id="viewInspectControllerConfig" class="org.onap.aai.sparky.sync.config.SyncControllerConfig">
-
-               <property name="controllerName" value="View-Inspect-Sync-Controller" />
-               <property name="enabled" value="true" />
-               <property name="syncTaskDelayInMs" value="5000" />
-               <property name="syncTaskFrequencyInDays" value="1" />
-               <property name="numSyncControllerWorkers" value="2" />
-               <property name="runOnceSyncEnabled" value="true" />
-               <property name="periodicSyncEnabled" value="false" />
-               <property name="numInternalSyncWorkers" value="2" />
-               <property name="numSyncElasticWorkers" value="5" />
-               <property name="numSyncActiveInventoryWorkers" value="5" />
-               <property name="targetSyncStartTimeStamp" value="05:00:00 UTC+00:00" />
-       </bean>
-
-       <bean id="viewInspectySchemaConfig" class="org.onap.aai.sparky.sync.config.ElasticSearchSchemaConfig">
-               <property name="indexName" value="entity-search-index" />
-               <property name="indexDocType" value="default" />
-               <property name="indexMappingsFileName" value="/schemas/es_mappings.json" />
-               <property name="indexSettingsFileName" value="/schemas/es_settings.json" />
-       </bean>
-
-
-       <bean id="viewInspectSyncController"
-               class="org.onap.aai.sparky.viewinspect.sync.ViewInspectSyncController"
-               init-method="registerController">
-
-               <constructor-arg ref="viewInspectControllerConfig" />
-               <constructor-arg ref="activeInventoryAdapter" />
-               <constructor-arg ref="elasticSearchAdapter" />
-               <constructor-arg ref="viewInspectySchemaConfig" />
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg ref="aaiNetworkStatConfig" />
-               <constructor-arg ref="elasticSearchNetworkStatConfig" />
-               <constructor-arg ref="crossEntityReferenceLookup" />
-               <constructor-arg ref="oxmEntityLookup" />
-               <constructor-arg ref="searchableEntityLookup" />
-               <constructor-arg ref="elasticSearchSchemaFactory" />
-
-               <property name="syncControllerRegistry" ref="syncControllerRegistry" />
-
-       </bean>
-
-       <bean id="syncControllerService" class="org.onap.aai.sparky.sync.SyncControllerService"
-               destroy-method="shutdown">
-               <constructor-arg ref="syncControllerRegistry" />
-               <constructor-arg value="5" />
-               <constructor-arg value="5" />
-       </bean>
-
-</beans>               
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspect.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspect.xml
deleted file mode 100644 (file)
index c146e6e..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="
-              http://www.springframework.org/schema/beans
-              http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-       <bean id="visualizationConfigurations"
-               class="org.onap.aai.sparky.viewandinspect.config.VisualizationConfigs">
-               <property name="maxSelfLinkTraversalDepth" value="2" />
-               <property name="visualizationDebugEnabled" value="false" />
-               <property name="aaiEntityNodeDescriptors" value="/descriptors/aaiEntityNodeDescriptors.json" />
-               <property name="generalNodeClassName" value="generalNodeClass" />
-               <property name="searchNodeClassName" value="searchedNodeClass" />
-               <property name="selectedSearchedNodeClassName" value="selectedSearchedNodeClass" />
-               <property name="numOfThreadsToFetchNodeIntegrity" value="20" />
-               <property name="makeAllNeighborsBidirectional" value="false" />
-               <property name="gizmoEnabled" value="false" />
-               <property name="resourceLoader" ref="sparkyResourceLoader" />
-
-               <property name="shallowEntities">
-                       <list value-type="java.lang.String">
-                               <value>cloud-region</value>
-                               <value>complex</value>
-                               <value>vnf-image</value>
-                               <value>image</value>
-                               <value>flavor</value>
-                               <value>availability-zone</value>
-                               <value>tenant</value>
-                               <value>network-profile</value>
-                               <value>l-interface</value>
-                       </list>
-               </property>
-
-       </bean>
-
-       <bean id="baseVisualizationService"
-               class="org.onap.aai.sparky.viewandinspect.services.BaseVisualizationService">
-               <constructor-arg ref="oxmModelLoader"/>
-               <constructor-arg ref="visualizationConfigurations"/> 
-               <constructor-arg ref="activeInventoryAdapter" />
-               <constructor-arg ref="gizmoAdapter" />
-               <constructor-arg ref="elasticSearchAdapter" />
-               <constructor-arg ref="elasticSearchEndpointConfig" />
-               <constructor-arg ref="viewInspectySchemaConfig" />
-               <constructor-arg name="numActiveInventoryWorkers" value="50" />
-               <constructor-arg ref="oxmEntityLookup" />
-        <constructor-arg ref="subscriptionConfig" />
-       </bean>
-
-       <bean id="schemaVisualizationProcessor"
-               class="org.onap.aai.sparky.viewandinspect.SchemaVisualizationProcessor">
-               <property name="visualizationService" ref="baseVisualizationService" />
-       </bean>
-
-</beans>               
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspectSearchProvider.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspectSearchProvider.xml
deleted file mode 100644 (file)
index 072c935..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="
-              http://www.springframework.org/schema/beans
-              http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-                                <bean id="viewInspectSearchProvider"
-                               class="org.onap.aai.sparky.viewandinspect.search.ViewInspectSearchProvider">
-                               <constructor-arg ref="searchServiceAdapter" />
-                               <constructor-arg ref="suggestiveSearchConfigs" />
-                               <constructor-arg name="viewInspectIndexName" value="entitysearchindex" />
-                               <constructor-arg name="viewInspectSuggestionRoute" value="schema" />
-                               <constructor-arg ref="oxmEntityLookup" />
-
-                               <property name="additionalSearchSuggestionText">
-                                       <value>Schema</value>
-                               </property>
-
-                       </bean>
-
-                       <bean id="registerViewInspectSearchProvider"
-                               class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
-                               <property name="targetObject" ref="searchProviderRegistry" />
-                               <property name="targetMethod">
-                                       <value>addSearchProviders</value>
-                               </property>
-                               <property name="arguments">
-                                       <list value-type="org.onap.aai.sparky.search.api.SearchProvider">
-                                               <ref bean="viewInspectSearchProvider" />
-                                       </list>
-                               </property>
-                       </bean>
-
-</beans>
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core.xml
deleted file mode 100644 (file)
index 8f5d42d..0000000
+++ /dev/null
@@ -1,241 +0,0 @@
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="
-              http://www.springframework.org/schema/beans
-              http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-                                <bean id="searchServiceRestEndpointConfig" class="org.onap.aai.sparky.dal.rest.config.RestEndpointConfig">
-                                       <property name="endpointIpAddress" value="{{.Values.global.searchData.serviceName}}.{{.Release.Namespace}}" />
-                                       <property name="endpointServerPort" value="9509" />
-                                       <property name="numRequestRetries" value="5" />
-                                       <property name="restAuthenticationMode" value="SSL_CERT" />
-                                       <property name="connectTimeoutInMs" value="60000" />
-                                       <property name="readTimeoutInMs" value="30000" />
-                                       <property name="certFileName" value="/auth/client-cert-onap.p12" />
-                                       <property name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />
-                                       <property name="truststoreFileName" value="/auth/inventory-ui-keystore" />
-                                       <property name="validateServerCertChain" value="false" />
-                                       <property name="validateServerHostname" value="false" />
-                                       <property name="resourceLoader" ref="sparkyResourceLoader" />
-                               </bean>
-
-                               <bean id="searchServiceAdapter" class="org.onap.aai.sparky.search.SearchServiceAdapter">
-                                       <constructor-arg ref="searchServiceRestEndpointConfig" />
-                                       <constructor-arg name="serviceApiVersion" value="v1" />
-                               </bean>
-
-                               <bean id="filtersConfig" class="org.onap.aai.sparky.search.filters.config.FiltersConfig">
-                                       <constructor-arg name="filtersFileName" value="/filters/aaiui_filters.json" />
-                                       <constructor-arg name="viewsFileName" value="/filters/aaiui_views.json" />
-                                       <constructor-arg name="resourceLoader" ref="sparkyResourceLoader" />
-                               </bean>
-
-                               <bean id="crossEntityReferenceLookup"
-                                       class="org.onap.aai.sparky.config.oxm.CrossEntityReferenceLookup" />
-
-                               <bean id="geoEntityLookup" class="org.onap.aai.sparky.config.oxm.GeoEntityLookup" />
-
-                               <bean id="oxmEntityLookup" class="org.onap.aai.sparky.config.oxm.OxmEntityLookup" />
-
-                               <bean id="searchableEntityLookup" class="org.onap.aai.sparky.config.oxm.SearchableEntityLookup" />
-
-                               <bean id="suggestionEntityLookup" class="org.onap.aai.sparky.config.oxm.SuggestionEntityLookup">
-                                       <constructor-arg ref="filtersConfig" />
-                               </bean>
-
-                               <bean id="oxmModelProcessorSet" class="org.springframework.beans.factory.config.SetFactoryBean">
-                                       <property name="targetSetClass" value="java.util.HashSet" />
-                                       <property name="sourceSet">
-                                               <set>
-                                                       <ref bean="crossEntityReferenceLookup" />
-                                                       <ref bean="geoEntityLookup" />
-                                                       <ref bean="oxmEntityLookup" />
-                                                       <ref bean="searchableEntityLookup" />
-                                                       <ref bean="suggestionEntityLookup" />
-                                               </set>
-                                       </property>
-                               </bean>
-
-                               <bean id="oxmModelLoader" class="org.onap.aai.sparky.config.oxm.OxmModelLoader" init-method="loadLatestOxmModel">
-                                       <!-- the int argument is the latestVersionOverride.  -1 disables the override -->
-                                       <constructor-arg type="int" value="-1" />
-                                       <constructor-arg ref="oxmModelProcessorSet" />
-                               </bean>
-
-                               <bean id="searchProviderRegistry"
-                                       class="org.onap.aai.sparky.search.registry.SearchProviderRegistry" />
-
-                               <bean id="sparkyResourceLoader" class="org.onap.aai.sparky.config.SparkyResourceLoader">
-                                  <property name="configHomeEnvVar" value="CONFIG_HOME" />
-                               </bean> 
-
-                               <bean id="filterElasticSearchAdapter"
-                                       class="org.onap.aai.sparky.search.filters.FilterElasticSearchAdapter">
-                                       <constructor-arg ref="elasticSearchAdapter" />
-                               </bean>
-
-                               <bean id="filteredSearchHelper" class="org.onap.aai.sparky.search.filters.FilteredSearchHelper" >
-                                       <constructor-arg ref="filtersConfig" />
-                                       <constructor-arg ref="filterElasticSearchAdapter" />
-                               </bean>
-
-                               <bean id="filterProcessor" class="org.onap.aai.sparky.search.filters.FilterProcessor" >
-                                       <property name="filteredSearchHelper" ref="filteredSearchHelper" />
-                               </bean>
-
-                               <bean id="unifiedSearchProcessor" class="org.onap.aai.sparky.search.UnifiedSearchProcessor">
-                                       <property name="searchProviderRegistry" ref="searchProviderRegistry" />
-                               </bean>
-
-                               <bean id="entityCountHistoryProcessor" class="org.onap.aai.sparky.search.EntityCountHistoryProcessor">
-                                       <constructor-arg ref="elasticSearchAdapter" />
-                                       <constructor-arg name="entityTypesToSummarizeDelimitedList"
-                                               value="customer,service-instance,complex,pserver,vserver,vnf" />
-                                       <constructor-arg name="vnfEntityTypesDelimitedList"
-                                               value="vnf,newvce,vce,vpe" />
-                                       <constructor-arg name="entityCountHistoryIndexName"
-                                               value="entitycounthistoryindex" />
-                               </bean>
-
-                               <bean id="attributeUpdater"
-                                class="org.onap.aai.sparky.editattributes.AttributeUpdater">
-                                <constructor-arg ref="oxmModelLoader" />
-                                <constructor-arg ref="oxmEntityLookup" />
-                                <constructor-arg ref="activeInventoryAdapter" />
-                            </bean>
-
-                            <bean id="attributeEditProcessor"
-                                class="org.onap.aai.sparky.editattributes.AttributeEditProcessor">
-                                <constructor-arg ref="attributeUpdater" />
-                            </bean>
-
-                           <bean id="geoVisualizationProcessor" class="org.onap.aai.sparky.inventory.GeoVisualizationProcessor">
-                                       <constructor-arg ref="elasticSearchAdapter" />
-                                       <constructor-arg name="topographicalSearchIndexName"
-                                               value="topographicalsearchindex" />
-                               </bean>
-
-                            <bean id = "pairingHashMap" class="org.springframework.beans.factory.config.MapFactoryBean">
-                                                       <property name="targetMapClass">
-                                                               <value>java.util.HashMap</value>
-                                                       </property>
-                                                       <property name="sourceMap">
-                                                               <map key-type="java.lang.String" value-type="java.lang.String" >
-                                                                       <entry key="volume-group-id" value="called" />
-                                                                       <entry key="volume-group-name" value="called" />
-                                                                       <entry key="physical-location-id" value="called" />
-                                                                       <entry key="data-center-code" value="called" />
-                                                                       <entry key="complex-name" value="called" />
-                                                                       <entry key="tenant-id" value="called" />
-                                                                       <entry key="tenant-name" value="called" />
-                                                                       <entry key="vserver-id" value="called" />
-                                                                       <entry key="vserver-name" value="called" />
-                                                                       <entry key="vserver-name2" value="called" />
-                                                                       <entry key="hostname" value="called" />
-                                                                       <entry key="pserver-name2" value="called" />
-                                                                       <entry key="pserver-id" value="called" />
-                                                                       <entry key="global-customer-id" value="called" />
-                                                                       <entry key="subscriber-name" value="called" />
-                                                                       <entry key="service-instance-id" value="called" />
-                                                                       <entry key="service-instance-name" value="called" />
-                                                                       <entry key="link-name" value="called" />
-                                                                       <entry key="vpn-id" value="called" />
-                                                                       <entry key="vpn-name" value="called" />
-                                                                       <entry key="vpe-id" value="called" />
-                                                                       <entry key="vnf-id" value="called" />
-                                                                       <entry key="vnf-name" value="called" />
-                                                                       <entry key="vnf-name2" value="called" />
-                                                                       <entry key="vnfc-name" value="called" />
-                                                                       <entry key="network-id" value="called" />
-                                                                       <entry key="network-name" value="called" />
-                                                                       <entry key="network-policy-id" value="called" />
-                                                                       <entry key="vf-module-id" value="called" />
-                                                                       <entry key="vf-module-name" value="called" />
-                                                                       <entry key="vnf-id2" value="called" />
-                                                                       <entry key="pnf-name" value="called" />
-                                                                       <entry key="circuit-id" value="called" />
-                                                                       <entry key="id" value="called" />
-                                                                       <entry key="group-id" value="called" />
-                                                                       <entry key="group-name" value="called" />
-                                                                       <entry key="street1" value="at" />
-                                                                       <entry key="street2" value="at" />
-                                                                       <entry key="code" value="at" />
-                                                                       <entry key="ipv4-oam-address" value="at" />
-                                                                       <entry key="network-policy-fqdn" value="at" />
-                                                               </map>
-                                                       </property>
-                               </bean>
-
-                            <bean id="suggestiveSearchConfigs" class="org.onap.aai.sparky.search.config.SuggestionConfig">
-                                       <property name="defaultPairingValue" value="with" />
-                                       <property name="pairingList" ref="pairingHashMap"></property>
-                                       <property name="stopWords">
-                                               <list value-type="java.lang.String">
-                                                       <value>a</value>
-                                                       <value>an</value>
-                                                       <value>and</value>
-                                                       <value>are</value>
-                                                       <value>as</value>
-                                                       <value>at</value>
-                                                       <value>be</value>
-                                                       <value>but</value>
-                                                       <value>by</value>
-                                                       <value>called</value>
-                                                       <value>for</value>
-                                                       <value>if</value>
-                                                       <value>in</value>
-                                                       <value>into</value>
-                                                       <value>is</value>
-                                                       <value>it</value>
-                                                       <value>no</value>
-                                                       <value>not</value>
-                                                       <value>of</value>
-                                                       <value>on</value>
-                                                       <value>or</value>
-                                                       <value>such</value>
-                                                       <value>that</value>
-                                                       <value>the</value>
-                                                       <value>their</value>
-                                                       <value>then</value>
-                                                       <value>there</value>
-                                                       <value>these</value>
-                                                       <value>they</value>
-                                                       <value>this</value>
-                                                       <value>to</value>
-                                                       <value>was</value>
-                                                       <value>will</value>
-                                                       <value>with</value>
-                                               </list>
-                                       </property>
-
-                            </bean>
-
-                                        <bean id="subscriptionConfig"
-                     class="org.onap.aai.sparky.subscription.config.SubscriptionConfig">
-                     <property name="subscriptionTarget" value="" />
-                     <property name="subscriptionOrigin" value="" />
-                     <property name="subscriptionMessageType" value="" />
-                     <property name="subscriptionTopic" value="" />
-                     <property name="launchOITarget" value="" />
-                     <property name="launchOIOrigin" value="" />
-                     <property name="launchOIMessageType" value="" />
-                     <property name="launchOITopic" value="" />
-                                                                                <property name="annEntitiyTypes">
-                                                                                        <list value-type="java.lang.String">
-                                                                                                <value>pserver</value>
-                                                                                                <value>pnf</value>
-                                                                                        </list>
-                                                                        </property>
-                                                                        <property name="isLaunchOIEnabled" value="false" />
-            </bean>
-
-            <bean id="subscriptionService"
-                     class="org.onap.aai.sparky.subscription.services.SubscriptionService">
-                     <constructor-arg ref="subscriptionConfig" />
-            </bean>
-
-            <bean id="subscriptionServiceProcessor"
-                     class="org.onap.aai.sparky.subscription.SubscriptionServiceProcessor">
-                     <constructor-arg ref="subscriptionService" />
-            </bean>
-</beans>
index 1f6ed74..6a00fe7 100644 (file)
@@ -1,72 +1,50 @@
+# Copyright © 2018 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: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-portal
-  namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-log
-  namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-camel-rests
-  namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/camel-rests/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-descriptors
-  namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/descriptors/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-filters
+  name: {{ include "common.fullname" . }}-prop
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/filters/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/application-resources.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/application-ssl.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/application-oxm-default.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/application-oxm-override.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/application-oxm-schema-prod.properties").AsConfig . | indent 2 }}
 ---
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-schemas
+  name: {{ include "common.fullname" . }}
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/schemas/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
 ---
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-spring-beans
+  name: {{ include "common.fullname" . }}-portal
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/spring-beans/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/portal/*").AsConfig . | indent 2 }}
 ---
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-boot-inf
+  name: {{ include "common.fullname" . }}-portal-props
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/portal/BOOT-INF/classes/*").AsConfig . | indent 2 }}
-
+{{ tpl (.Files.Glob "resources/config/portal/BOOT-INF/classes/*").AsConfig . | indent 2 }}
\ No newline at end of file
index b9de92b..48235bc 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -57,43 +58,47 @@ spec:
       - name: {{ include "common.name" . }}
         image: "{{ include "common.repository" . }}/{{ .Values.image }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-        env:
-        - name: CONFIG_HOME
-          value: /opt/app/sparky/appconfig/
-        - name: KEYSTORE_ALIAS_PASSWORD
-          value: {{ .Values.config.keystoreAliasPassword }}
-        - name: KEYSTORE_PASSWORD
-          value: {{ .Values.config.keyStorePassword }}
-        - name: SPARKY_SSL_ENABLED
-          value: 'false'
-        - name: SPARKY_PORTAL_ENABLED
-          value: 'false'
+
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
           readOnly: true
-        - mountPath: /opt/app/sparky/appconfig/auth/
+        - mountPath: /opt/app/sparky/config/auth/
           name: {{ include "common.fullname" . }}-auth-config
-        - mountPath: /opt/app/sparky/appconfig/camel-rests/
-          name: {{ include "common.fullname" . }}-camel-rests-config
-        - mountPath: /opt/app/sparky/appconfig/descriptors/
-          name: {{ include "common.fullname" . }}-descriptors-config
-        - mountPath: /opt/app/sparky/appconfig/filters/
-          name: {{ include "common.fullname" . }}-filters-config
-        - mountPath: /opt/app/sparky/appconfig/
-          name: {{ include "common.fullname" . }}-config
-        - mountPath: /opt/app/sparky/appconfig/portal
+
+        - mountPath: /opt/app/sparky/config/portal/
           name: {{ include "common.fullname" . }}-portal-config
-        - mountPath: /opt/app/sparky/appconfig/portal/BOOT-INF/classes
-          name: {{ include "common.fullname" . }}-portal-boot-inf-config
-        - mountPath: /opt/app/sparky/appconfig/schemas
-          name: {{ include "common.fullname" . }}-schemas-config
-        - mountPath: /opt/app/sparky/appconfig/spring-beans/
-          name: {{ include "common.fullname" . }}-spring-beans-config
+
+        - mountPath: /opt/app/sparky/config/portal/BOOT-INF/classes/
+          name: {{ include "common.fullname" . }}-portal-config-props
+
         - mountPath: /var/log/onap
           name: {{ include "common.fullname" . }}-logs
-        - mountPath: /opt/app/sparky/appconfig/logging/
-          name: {{ include "common.fullname" . }}-log-conf
+
+        - mountPath:  /opt/app/sparky/config/application.properties
+          name: {{ include "common.fullname" . }}-properties
+          subPath: application.properties
+
+        - mountPath:  /opt/app/sparky/config/application-resources.properties
+          name: {{ include "common.fullname" . }}-properties
+          subPath: application-resources.properties
+
+        - mountPath:  /opt/app/sparky/config/application-ssl.properties
+          name: {{ include "common.fullname" . }}-properties
+          subPath: application-ssl.properties
+
+        - mountPath:  /opt/app/sparky/config/application-oxm-default.properties
+          name: {{ include "common.fullname" . }}-properties
+          subPath: application-oxm-default.properties
+          
+        - mountPath:  /opt/app/sparky/config/application-oxm-override.properties
+          name: {{ include "common.fullname" . }}-properties
+          subPath: application-oxm-override.properties
+
+        - mountPath:  /opt/app/sparky/config/application-oxm-schema-prod.properties
+          name: {{ include "common.fullname" . }}-properties
+          subPath: application-oxm-schema-prod.properties
+        
         ports:
         - containerPort: {{ .Values.service.internalPort }}
         - containerPort: {{ .Values.service.internalPort2 }}
@@ -139,33 +144,26 @@ spec:
       - name: localtime
         hostPath:
           path: /etc/localtime
+
+      - name: {{ include "common.fullname" . }}-properties
+        configMap:
+          name: {{ include "common.fullname" . }}-prop
+
       - name: {{ include "common.fullname" . }}-config
         configMap:
           name: {{ include "common.fullname" . }}
-      - name: {{ include "common.fullname" . }}-auth-config
-        secret:
-          secretName: {{ include "common.fullname" . }}
-      - name: {{ include "common.fullname" . }}-camel-rests-config
-        configMap:
-          name: {{ include "common.fullname" . }}-camel-rests
-      - name: {{ include "common.fullname" . }}-descriptors-config
-        configMap:
-          name: {{ include "common.fullname" . }}-descriptors
-      - name: {{ include "common.fullname" . }}-filters-config
-        configMap:
-          name: {{ include "common.fullname" . }}-filters
+
       - name: {{ include "common.fullname" . }}-portal-config
         configMap:
           name: {{ include "common.fullname" . }}-portal
-      - name: {{ include "common.fullname" . }}-portal-boot-inf-config
-        configMap:
-          name: {{ include "common.fullname" . }}-boot-inf
-      - name: {{ include "common.fullname" . }}-schemas-config
-        configMap:
-          name: {{ include "common.fullname" . }}-schemas
-      - name: {{ include "common.fullname" . }}-spring-beans-config
+
+      - name: {{ include "common.fullname" . }}-portal-config-props
         configMap:
-          name: {{ include "common.fullname" . }}-spring-beans
+          name: {{ include "common.fullname" . }}-portal-props
+
+      - name: {{ include "common.fullname" . }}-auth-config
+        secret:
+          secretName: {{ include "common.fullname" . }}
       - name: filebeat-conf
         configMap:
           name: aai-filebeat
@@ -173,9 +171,8 @@ spec:
         emptyDir: {}
       - name: aai-sparky-filebeat
         emptyDir: {}
-      - name: {{ include "common.fullname" . }}-log-conf
-        configMap:
-          name: {{ include "common.fullname" . }}-log
+      - name: modeldir
+        emptyDir: {}
       restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 69bd3f8..32a3482 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Secret
 metadata:
index 385cdea..24ee69d 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
@@ -21,4 +35,4 @@ spec:
   {{- end}}
   selector:
     app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
\ No newline at end of file
+    release: {{ .Release.Name }}
index 65aa79a..6004d6d 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for sparky-be.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
@@ -14,7 +28,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sparky-be:1.2.1
+image: onap/sparky-be:1.3-STAGING-latest
 pullPolicy: Always
 restartPolicy: Always
 
diff --git a/kubernetes/aai/charts/aai-spike/Chart.yaml b/kubernetes/aai/charts/aai-spike/Chart.yaml
new file mode 100644 (file)
index 0000000..b9fd7b0
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs, 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
+description: ONAP AAI Spike microservice
+name: aai-spike
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-spike/requirements.yaml b/kubernetes/aai/charts/aai-spike/requirements.yaml
new file mode 100644 (file)
index 0000000..9552dfd
--- /dev/null
@@ -0,0 +1,21 @@
+# Copyright © 2018 Amdocs, 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.
+
+dependencies:
+  - name: common
+    version: ~2.0.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'
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/auth/tomcat_keystore b/kubernetes/aai/charts/aai-spike/resources/config/auth/tomcat_keystore
new file mode 100644 (file)
index 0000000..025f3c4
Binary files /dev/null and b/kubernetes/aai/charts/aai-spike/resources/config/auth/tomcat_keystore differ
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/logback.xml b/kubernetes/aai/charts/aai-spike/resources/config/logback.xml
new file mode 100644 (file)
index 0000000..e40ba13
--- /dev/null
@@ -0,0 +1,194 @@
+<!--
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+    Copyright © 2018 Amdocs
+    ================================================================================
+    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">
+  <!--<jmxConfigurator /> -->
+  <!-- directory path for all other type logs -->
+
+  <property name="logDir"  value="/var/log/onap" />
+
+  <!--  specify the component name
+       <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC"  -->
+  <property name="componentName" value="AAI-SPK" />
+
+  <!--  default eelf log file names -->
+  <property name="generalLogName" value="error" />
+  <property name="metricsLogName" value="metrics" />
+  <property name="auditLogName" value="audit" />
+  <property name="debugLogName" value="debug" />
+
+  <property name="errorLogPattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{RequestId}|%thread|Spike|%mdc{PartnerName}|%logger||%.-5level|%msg%n" />
+  <property name="auditMetricPattern" value="%m%n" />
+
+  <property name="logDirectory" value="${logDir}/${componentName}" />
+
+  <!-- Example evaluator filter applied against console appender -->
+  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+    <encoder>
+      <pattern>${errorLogPattern}</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>
+    <rollingPolicy
+        class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${errorLogPattern}</pattern>
+    </encoder>
+  </appender>
+  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+    <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+      <level>INFO</level>
+    </filter>
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELF" />
+  </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.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${auditMetricPattern}</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.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+           %msg%n"</pattern> -->
+      <pattern>${auditMetricPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFMetrics"/>
+  </appender>
+
+  <appender name="EELFDebug"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${debugLogName}.log</file>
+    <rollingPolicy
+        class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip
+      </fileNamePattern>
+      <maxHistory>60</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>${errorLogPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFDebug" />
+    <includeCallerData>false</includeCallerData>
+  </appender>
+
+  <!-- ============================================================================ -->
+  <!--  EELF loggers -->
+  <!-- ============================================================================ -->
+  <logger name="com.att.eelf" level="info" additivity="false">
+    <appender-ref ref="asyncEELF" />
+    <appender-ref ref="asyncEELFDebug" />
+  </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>
+
+  <!-- Spring related loggers -->
+  <logger name="org.springframework" level="WARN" />
+  <logger name="org.springframework.beans" level="WARN" />
+  <logger name="org.springframework.web" level="WARN" />
+  <logger name="com.blog.spring.jms" level="WARN" />
+
+  <!-- Spike service loggers -->
+  <logger name="org.onap.aai.spike" level="INFO" />
+
+  <!-- Other Loggers that may help troubleshoot -->
+  <logger name="net.sf" level="WARN" />
+  <logger name="org.apache" level="WARN" />
+  <logger name="org.apache.commons.httpclient" level="WARN" />
+  <logger name="org.apache.commons" level="WARN" />
+  <logger name="org.apache.coyote" level="WARN" />
+  <logger name="org.apache.jasper" level="WARN" />
+
+  <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
+       May aid in troubleshooting) -->
+  <logger name="org.apache.camel" level="WARN" />
+  <logger name="org.apache.cxf" level="WARN" />
+  <logger name="org.apache.camel.processor.interceptor" level="WARN" />
+  <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
+  <logger name="org.apache.cxf.service" level="WARN" />
+  <logger name="org.restlet" level="WARN" />
+  <logger name="org.apache.camel.component.restlet" level="WARN" />
+
+  <!-- logback internals logging -->
+  <logger name="ch.qos.logback.classic" level="WARN" />
+  <logger name="ch.qos.logback.core" level="WARN" />
+
+  <root>
+    <appender-ref ref="asyncEELF" />
+    <!-- <appender-ref ref="asyncEELFDebug" /> -->
+  </root>
+
+</configuration>
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v10.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v10.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v11.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v11.json
new file mode 100644 (file)
index 0000000..8d00636
--- /dev/null
@@ -0,0 +1,6 @@
+{
+        "contains-other-v": "java.lang.String",
+        "delete-other-v": "java.lang.String",
+        "SVC-INFRA": "java.lang.String",
+        "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v12.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v12.json
new file mode 100644 (file)
index 0000000..8d00636
--- /dev/null
@@ -0,0 +1,6 @@
+{
+        "contains-other-v": "java.lang.String",
+        "delete-other-v": "java.lang.String",
+        "SVC-INFRA": "java.lang.String",
+        "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v13.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v13.json
new file mode 100644 (file)
index 0000000..8d00636
--- /dev/null
@@ -0,0 +1,6 @@
+{
+        "contains-other-v": "java.lang.String",
+        "delete-other-v": "java.lang.String",
+        "SVC-INFRA": "java.lang.String",
+        "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v14.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v14.json
new file mode 100644 (file)
index 0000000..8d00636
--- /dev/null
@@ -0,0 +1,6 @@
+{
+        "contains-other-v": "java.lang.String",
+        "delete-other-v": "java.lang.String",
+        "SVC-INFRA": "java.lang.String",
+        "prevent-delete": "java.lang.String"
+}
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v7.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v7.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v8.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v8.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v9.json b/kubernetes/aai/charts/aai-spike/resources/config/model/edge_props/edge_properties_v9.json
new file mode 100644 (file)
index 0000000..7cbddae
--- /dev/null
@@ -0,0 +1,10 @@
+{
+  "isParent":"java.lang.Boolean",
+  "isParent-REV":"java.lang.Boolean",
+  "usesResource":"java.lang.Boolean",
+  "usesResource-REV":"java.lang.Boolean",
+  "SVC-INFRA":"java.lang.Boolean",
+  "SVC-INFRA-REV":"java.lang.Boolean",
+  "hasDelTarget":"java.lang.Boolean",
+  "hasDelTarget-REV":"java.lang.Boolean"
+}
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/schemaIngest.properties b/kubernetes/aai/charts/aai-spike/resources/config/schemaIngest.properties
new file mode 100644 (file)
index 0000000..cc51f17
--- /dev/null
@@ -0,0 +1,30 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs
+# ================================================================================
+# 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=========================================================
+#
+
+# Properties for the SchemaLocationsBean
+# The AAI Schema jar will be unpacked to bundleconfig/etc
+schemaConfig=NA
+# Files named aai_oxm_v*.xml are unpacked here:
+nodeDir=/opt/app/spike/bundleconfig/etc/oxm
+# DB Edge Rules are unpacked here:
+edgeDir=/opt/app/spike/bundleconfig/etc/dbedgerules
+# DB Edge Property files are copied here:
+edgePropsDir=/opt/app/spike/config/model/edge_props
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/spike-beans.xml b/kubernetes/aai/charts/aai-spike/resources/config/spike-beans.xml
new file mode 100644 (file)
index 0000000..50be8cb
--- /dev/null
@@ -0,0 +1,62 @@
+<!--
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+    Copyright © 2018 Amdocs
+    ================================================================================
+    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=========================================================
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:util="http://www.springframework.org/schema/util"
+    xsi:schemaLocation="
+        http://www.springframework.org/schema/beans
+        http://www.springframework.org/schema/beans/spring-beans.xsd
+        http://www.springframework.org/schema/util
+        http://www.springframework.org/schema/util/spring-util.xsd">
+
+   <bean id="eventConsumer" class="org.onap.aai.event.client.DMaaPEventConsumer">
+      <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:{{.Values.event.port.dmaap}}" />
+      <constructor-arg name="topic" value="{{.Values.event.consumer.topic}}" />
+      <constructor-arg name="username" value="" />
+      <constructor-arg name="password" value="" />
+      <constructor-arg name="consumerGroup" value="spike" />
+      <constructor-arg name="consumerId" value="spike" />
+      <constructor-arg name="timeoutMs" value="1000" />
+      <constructor-arg name="messageLimit" value="100" />
+      <constructor-arg name="transportType" value="HTTPAUTH" />
+      <constructor-arg name="protocol" value="{{.Values.event.protocol}}" />
+      <constructor-arg name="filter"><null /></constructor-arg>
+   </bean>
+
+    <bean id="eventPublisher" class="org.onap.aai.event.client.DMaaPEventPublisher" >
+        <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:{{.Values.event.port.dmaap}}" />
+        <constructor-arg name="topic" value="{{.Values.event.publisher.topic}}" />
+        <constructor-arg name="username" value="" />
+        <constructor-arg name="password" value="" />
+        <constructor-arg name="maxBatchSize" value="100" />
+        <constructor-arg name="maxAgeMs" value="250" />
+        <constructor-arg name="delayBetweenBatchesMs" value="50" />
+        <constructor-arg name="transportType" value="HTTPAUTH" />
+        <constructor-arg name="protocol" value="{{.Values.event.protocol}}" />
+        <constructor-arg name="contentType" value="application/json" />
+    </bean>
+
+   <bean id="spikeService" class="org.onap.aai.spike.service.SpikeService" init-method="startup">
+      <constructor-arg ref="eventConsumer" />
+      <constructor-arg ref="eventPublisher" />
+   </bean>
+
+</beans>
diff --git a/kubernetes/aai/charts/aai-spike/resources/config/spike.properties b/kubernetes/aai/charts/aai-spike/resources/config/spike.properties
new file mode 100644 (file)
index 0000000..c3ba4a3
--- /dev/null
@@ -0,0 +1,28 @@
+#
+# ============LICENSE_START=======================================================
+# org.onap.aai
+# ================================================================================
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs
+# ================================================================================
+# 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=========================================================
+#
+
+# Spike configuration
+
+spike.event.poll.interval=30000
+spike.event.offset.period= 10000
+spike.event.queue.capacity=10000
+spike.event.queue.delay=10000
+spike.props.reserved=source-of-truth,last-mod-source-of-truth,aai-created-ts,aai-last-mod-ts
diff --git a/kubernetes/aai/charts/aai-spike/templates/configmap.yaml b/kubernetes/aai/charts/aai-spike/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..8a51748
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 Amdocs, 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" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-edge-props-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/model/edge_props/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/aai/charts/aai-spike/templates/deployment.yaml b/kubernetes/aai/charts/aai-spike/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..edf6ce8
--- /dev/null
@@ -0,0 +1,159 @@
+# Copyright © 2018 Amdocs, 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: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - message-router-kafka
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      containers:
+        - name: {{ .Chart.Name }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{ if .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 }}
+          env:
+            - name: CONFIG_HOME
+              value: /opt/app/spike/config
+            - name: KEY_STORE_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: {{ template "common.fullname" . }}-pass
+                  key: KEY_STORE_PASSWORD
+            - name: KEY_MANAGER_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: {{ template "common.fullname" . }}-pass
+                  key: KEY_MANAGER_PASSWORD
+            - name: SERVICE_BEANS
+              value: /opt/app/spike/dynamic/conf
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: true
+          - mountPath: /opt/app/spike/config/auth
+            name: {{ include "common.fullname" . }}-secrets
+          - mountPath: /opt/app/spike/dynamic/conf/spike-beans.xml
+            name: {{ include "common.fullname" . }}-config
+            subPath: spike-beans.xml
+          - mountPath: /opt/app/spike/config/spike.properties
+            subPath: spike.properties
+            name: {{ include "common.fullname" . }}-config
+          - mountPath: /opt/app/spike/config/schemaIngest.properties
+            subPath: schemaIngest.properties
+            name: {{ include "common.fullname" . }}-config
+          - mountPath: /opt/app/spike/config/model/edge_props
+            name: {{ include "common.fullname" . }}-edge-props-config
+          - mountPath: /opt/app/spike/bundleconfig/etc/logback.xml
+            name: {{ include "common.fullname" . }}-config
+            subPath: logback.xml
+          - mountPath: /var/log/onap
+            name: {{ include "common.fullname" . }}-logs
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+
+        # side car containers
+        - name: filebeat-onap
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts:
+          - mountPath: /usr/share/filebeat/filebeat.yml
+            subPath: filebeat.yml
+            name: filebeat-conf
+          - mountPath: /var/log/onap
+            name: {{ include "common.fullname" . }}-logs
+          - mountPath: /usr/share/filebeat/data
+            name: aai-filebeat
+
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name: {{ include "common.fullname" . }}-secrets
+          secret:
+            secretName: {{ include "common.fullname" . }}-spike-secrets
+        - name: {{ include "common.fullname" . }}-config
+          configMap:
+            name: {{ include "common.fullname" . }}-configmap
+            items:
+            - key: spike.properties
+              path: spike.properties
+            - key: spike-beans.xml
+              path: spike-beans.xml
+            - key: schemaIngest.properties
+              path: schemaIngest.properties
+            - key: logback.xml
+              path: logback.xml
+        - name: {{ include "common.fullname" . }}-edge-props-config
+          configMap:
+            name: {{ include "common.fullname" . }}-edge-props-configmap
+        - name: filebeat-conf
+          configMap:
+            name: aai-filebeat
+        - name: {{ include "common.fullname" . }}-logs
+          emptyDir: {}
+        - name: aai-filebeat
+          emptyDir: {}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-spike/templates/secrets.yaml b/kubernetes/aai/charts/aai-spike/templates/secrets.yaml
new file mode 100644 (file)
index 0000000..6a9810b
--- /dev/null
@@ -0,0 +1,37 @@
+# Copyright © 2018 Amdocs, 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: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-spike-secrets
+  namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/auth/*").AsSecrets . | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-pass
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+type: Opaque
+data:
+  KEY_STORE_PASSWORD: {{ .Values.config.keyStorePassword | b64enc | quote }}
+  KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
diff --git a/kubernetes/aai/charts/aai-spike/templates/service.yaml b/kubernetes/aai/charts/aai-spike/templates/service.yaml
new file mode 100644 (file)
index 0000000..745c73b
--- /dev/null
@@ -0,0 +1,39 @@
+# Copyright © 2018 Amdocs, 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: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort}}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort}}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
diff --git a/kubernetes/aai/charts/aai-spike/values.yaml b/kubernetes/aai/charts/aai-spike/values.yaml
new file mode 100644 (file)
index 0000000..6429d3f
--- /dev/null
@@ -0,0 +1,73 @@
+# Copyright © 2018 Amdocs, 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+  readinessImage: readiness-check:2.0.0
+  loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+image: onap/spike:1.0-STAGING-latest
+
+# application configuration
+config:
+  keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+  keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+
+# 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: false
+
+readiness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+
+service:
+  type: NodePort
+  portName: spike
+  externalPort: 9518
+  internalPort: 9518
+  nodePort: 39
+
+ingress:
+  enabled: false
+
+resources: {}
+
+# XML bean configuration
+event:
+  port:
+    dmaap: 3905
+  protocol: https
+  consumer:
+    topic: champRawEvents
+  publisher:
+    topic: spikeEvents
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 8f79b42..15f6916 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 description: ONAP AAI traversal
 name: aai-traversal
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/cadi.properties b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/cadi.properties
new file mode 100644 (file)
index 0000000..9523367
--- /dev/null
@@ -0,0 +1,8 @@
+
+cadi_loglevel=INFO
+cadi_prop_files=/opt/app/aai-traversal/resources/aaf/org.osaaf.location.props:/opt/app/aai-traversal/resources/aaf/org.onap.aai.props
+
+# OAuth2
+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
+
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.keyfile b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.keyfile
new file mode 100644 (file)
index 0000000..3416d4a
--- /dev/null
@@ -0,0 +1,27 @@
+2otP92kNFHdexroZxvgYY7ffslFiwCD3CiVYMIfUF2edqZK7972NwkvE_mbaBo6jh8lByLIqrWAf
+jyzoiVsvQ_kCa0cS1xaRLpcxv3bx1b7o3hGPBqpd6vmSG4y2JLzNlCBZWuTJz827wr8p_fWrYuUm
+4L1WoaEe8W5PRnXjl4hDqbJBAlEoRIBXugUDt_7O5wgx2Rl3HVoOczZtf0RzONZ1F0BmKf3QlAUe
+moSbARitYRgIPt5sLbT7qPyoEpGDhQ1XBowR744-wsjBc-14yO62Ajp5xWKTp15uWn3_HHuw1SAf
+GWSBRGlSlEVkXQqi9Hw5jDttKVzHX1ckwR0SQOirbtHPHplxPX3WKjKhSdSeMzw6LOAHIQYRMKBT
+74oGnULAfPtV7TaGwOKriT3P49CoPdt9On89-LGyCZSxDWKH0K-rgB6I2_hPT2Uzr3jmXiMa-sfh
+iMvyQ7ABBVx0OFsUuNb5mcU2O6dWiQreL5RerrloV_X3ZtnNjxENXKjQ5KBR1A5ISPjFFK-kf4Rb
+p6FSII8LcsiqgdWuZ4GX_C6x8HX4A-vD0x3Uc9CfoXY-k23cNIy-R-W-oB-P2OgdWDNgZ7VaOLNt
+3L-NwWpNblfYvs93cNmkbVAwCZ3r0OP7RFeuON84TRaynK_Fh2S3rypRyJcUmM1pvpZqJ5_-umSW
+hUs1OqkdLv3xjlVzzK-3nMr0q3Zcyp4XdyLYtcX5I3Xqk9ZcsyAT7ghmHhV8KjUjue7OcfAWg0m7
+RJLGq6VC8HeK4HEMa4lF677Qh7DRufghIDEmQSIDfGA790WGSA8HqcOvAL4hURCHyCWiPa5i8ksX
+xX4HyqF8PCVCLJ_ZhzcuIlc0jStAexWbJU_vcyX7XgUaHCkF-M-zv1FP6Z3DHBMD2QqSWjmyNCCk
+8sIuwzs62P_j2o9jG33kssedCrUWOwZancU107-5H0Zw-UWvtCqUfmRZ7TsEbWY7lk_SKfLfAN5q
+ncOQgU_VxDXUFDST4LN_WVECRafK3UtwWomxWSji25Lbf6NVni3ok-yLMDZR-wrE-54jLPES9j0i
+5N0xrk9CfsvGUpUZ1_XQcgaxI6m27DtCCJXb5ywenPBiUIJCMCTq88CqNZxGpju2i4BJcUH2hUHe
+GKhO8pgslwhtEVot9EDwdzSrJkWFCfb6ud4zMxrqdi7-mLWMOydg6lhpEFEX5wu2BLIujGsZlEGE
+_K9jGfBypjXuJCKDZIuPfEnf_7idjKis_JcFB7x4Hx2HHDcBjlWWFZN_VIEnPkQSyZEC26RTFP3k
+zkY3GwUfA36a4XW2pu3gE9wz-W6fkONfzOZ6YiyCm_dRFUVuGSdJG02Hh5iXYlMOGJltPzWH2jVf
+S-QTOmXQTKSOheXoJO6O-9uQbsRf-kq-6w1pvIOp4ms35w4_0Xj0Xr2a9y-L9PdBZvrUsa-jxsZU
+LyA-YY4Ej6QwDBDTD2MGjF1E5_ekYgjoNlltM9rJjofruM4ym0n7LPHC7YXXQSEFOZYeTKi6wUDw
+hQ1DoWHgu4PQ2lexada8sxQdConbPe2iW16h-PrO5D12E4XbT00fqaMlBmjQwzdNRdCC2NRPIQ5W
+nwaO8dZ9yjxsjT7ZVHb9-DRblb3XDocponzxVXqUGtJAie4WXQnerX0ApTWGaHEr5y56JJVS_3LP
+bKrbXBXcs4jTUX4ECXRrOs8JQDQNysXhvTPCu0XUxNZpjx6KLxDs93k2OcESHjl5J6n6OKKJqqoN
+JEyFO5LGXpnmUJbn0-CaHHPRI1mHwEu4brY8wDZd9A0PD1KGXDoCHMfEk1lGblQdyOcVrXZ6uSBk
+Z6zHDnwSCHO1mPYqtelJQehZoFuPSv9PIgKLxs_qJOtZFnXII5YO1mGXgiIBWBjUFDR5HG4ENS6y
+J4MCF-JLMp-PVMAkOaCIQRRDpRnMm_fT1sc_P562Diu_pcdt-r55pMFQYGoGfjRmxQBKk0-SsdnP
+mlZIiis9DfQEN0q3QQdNRYBJD7tmhUwhAPZdLgXqJA8sZf8UyFQhhpsky79NT343YL9smUlF
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.p12 b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.p12
new file mode 100644 (file)
index 0000000..023e2ea
Binary files /dev/null and b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.p12 differ
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.props b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.onap.aai.props
new file mode 100644 (file)
index 0000000..4596d91
--- /dev/null
@@ -0,0 +1,13 @@
+############################################################
+# Properties Generated by AT&T Certificate Manager
+# @copyright 2016, AT&T
+############################################################
+cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US
+cadi_keyfile=/opt/app/aai-traversal/resources/aaf/org.onap.aai.keyfile
+cadi_keystore=/opt/app/aai-traversal/resources/aaf/org.onap.aai.p12
+cadi_keystore_password=enc:383RDJRFA6yQz9AOxUxC1iIg3xTJXityw05MswnpnEtelRQy2D4r5INQjrea7GTV
+#cadi_key_password=enc:<KEY PASSWORD (optional if the same as KEYSTORE PASSWORD)>
+cadi_alias=aai@aai.onap.org
+cadi_truststore=/opt/app/aai-traversal/resources/aaf/truststoreONAPall.jks
+cadi_truststore_password=enc:s77wlnZFoQ08NhnU3OSeWO6uKgRwC6sAK-wTvVubNz2
+cadi_loglevel=INFO
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.osaaf.location.props b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/org.osaaf.location.props
new file mode 100644 (file)
index 0000000..132fb24
--- /dev/null
@@ -0,0 +1,23 @@
+##
+## org.osaaf.location.props
+##
+## Localized Machine Information
+##
+# Almeda California ?
+cadi_latitude=37.78187
+cadi_longitude=-122.26147
+
+# Locate URL (which AAF Env)
+aaf_locate_url=https://aaf-locate.{{.Release.Namespace}}:8095
+
+# AAF URL
+aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.0
+
+# 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
+
+
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/permissions.properties b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/permissions.properties
new file mode 100644 (file)
index 0000000..d4956f5
--- /dev/null
@@ -0,0 +1,2 @@
+permission.type=org.onap.aai.traversal
+permission.instance=*
\ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaf/truststoreONAPall.jks b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/truststoreONAPall.jks
new file mode 100644 (file)
index 0000000..2da1dcc
Binary files /dev/null and b/kubernetes/aai/charts/aai-traversal/resources/config/aaf/truststoreONAPall.jks differ
index 735609b..3859590 100644 (file)
 # ECOMP is a trademark and service mark of AT&T Intellectual Property.
 #
 
-####################################################################
-#  REMEMBER TO THINK ABOUT ENVIRONMENTAL DIFFERENCES AND CHANGE THE
-#  TEMPLATE AND *ALL* DATAFILES
-####################################################################
-
-####################################################################
-#  REMEMBER TO THINK ABOUT ENVIRONMENTAL DIFFERENCES AND CHANGE THE
-#  TEMPLATE AND *ALL* DATAFILES
-####################################################################
-
 aai.config.checktime=1000
 
 # this could come from siteconfig.pl?
 aai.config.nodename=AutomaticallyOverwritten
 
-
-
-aai.auth.cspcookies_on=false
-aai.dbmodel.filename=ex5.json
-
 aai.server.url.base=https://aai.{{ include "common.namespace" . }}:8443/aai/
-aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/v11/
+aai.server.url=https://aai.{{ include "common.namespace" . }}:8443/aai/{{ .Values.global.config.schema.version.api.default }}/
 aai.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
 
+{{ if .Values.global.config.basic.auth.enabled }}
 aai.tools.enableBasicAuth=true
-aai.tools.username=AAI
-aai.tools.password=AAI
-
-aai.truststore.filename=aai_keystore
-aai.truststore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
-aai.keystore.filename=aai_keystore
-aai.keystore.passwd.x=OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+aai.tools.username={{ .Values.global.config.basic.auth.username }}
+aai.tools.password={{ .Values.global.config.basic.auth.passwd }}
+{{ end }}
 
+aai.truststore.filename={{ .Values.global.config.truststore.filename }}
+aai.truststore.passwd.x={{ .Values.global.config.truststore.passwd }}
+aai.keystore.filename={{ .Values.global.config.keystore.filename }}
+aai.keystore.passwd.x={{ .Values.global.config.keystore.passwd }}
 
-aai.notification.current.version=v11
+aai.notification.current.version={{ .Values.global.config.schema.version.api.default }}
 aai.notificationEvent.default.status=UNPROCESSED
-aai.notificationEvent.default.eventType=AAI-EVENT
-aai.notificationEvent.default.domain=dev
+aai.notificationEvent.default.eventType={{ .Values.global.config.notification.eventType }}
+aai.notificationEvent.default.domain={{ .Values.global.config.notification.domain }}
 aai.notificationEvent.default.sourceName=aai
 aai.notificationEvent.default.sequenceNumber=0
 aai.notificationEvent.default.severity=NORMAL
-aai.notificationEvent.default.version=v11
+aai.notificationEvent.default.version={{ .Values.global.config.schema.version.api.default }}
 # This one lets us enable/disable resource-version checking on updates/deletes
 aai.resourceversion.enableflag=true
 aai.logging.maxStackTraceEntries=10
-aai.default.api.version=v11
-
-
+aai.default.api.version={{ .Values.global.config.schema.version.api.default }}
 
 # Used by Model-processing code
 aai.model.delete.sleep.per.vtx.msec=500
 aai.model.query.resultset.maxcount=50
 aai.model.query.timeout.sec=90
 
-# Used by Data Grooming
-aai.grooming.default.max.file=150
-aai.grooming.default.sleep.minutes=7
-
 aai.model.proc.max.levels=50
 aai.edgeTag.proc.max.levels=50
 
-# for transaction log
-aai.logging.hbase.interceptor=true
-aai.logging.hbase.enabled=true
-aai.logging.hbase.logrequest=true
-aai.logging.hbase.logresponse=true
-
-# for gremlin server
-aai.server.rebind=g
-hbase.table.name=aailogging.dev
-hbase.table.timestamp.format=YYYYMMdd-HH:mm:ss:SSS
-hbase.zookeeper.quorum=localhost
-hbase.zookeeper.property.clientPort=2181
-hbase.zookeeper.znode.parent=/hbase
-
 aai.logging.trace.enabled=true
 aai.logging.trace.logrequest=false
 aai.logging.trace.logresponse=false
@@ -103,13 +69,13 @@ aai.transaction.logging=true
 aai.transaction.logging.get=false
 aai.transaction.logging.post=false
 
-aai.realtime.clients=SDNC,MSO,SO,robot-ete
+aai.realtime.clients={{ .Values.global.config.realtime.clients }}
 
 #timeout for traversal enabled flag
-aai.traversal.timeoutenabled=true
+aai.traversal.timeoutenabled={{ .Values.config.timeout.enabled }}
 
 #timeout app specific
-aai.traversal.timeout.appspecific=JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAI-FILEGEN-GFPIP,-1
+aai.traversal.timeout.appspecific={{ .Values.config.timeout.appspecific }}
 
 #default timeout limit added for traversal if not overridden (in ms)
-aai.traversal.timeoutlimit=180000
+aai.traversal.timeoutlimit={{ .Values.config.timeout.limit | int }}
index ebfe98b..2ff95aa 100644 (file)
@@ -1,8 +1,22 @@
+# Copyright © 2018 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.
+
 # The following info parameters are being referenced by ajsc6
 info.build.artifact=aai-traversal
 info.build.name=traversal
 info.build.description=Traversal Microservice
-info.build.version=1.2.0
+info.build.version=1.3.0
 
 spring.application.name=aai-traversal
 spring.jersey.type=filter
@@ -10,7 +24,8 @@ spring.jersey.type=filter
 server.contextPath=/
 spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
 
-spring.profiles.active=production,dmaap
+spring.profiles.active={{ .Values.global.config.profiles.active }}
+spring.jersey.application-path=${schema.uri.base.path}
 #The max number of active threads in this pool
 server.tomcat.max-threads=200
 #The minimum number of threads always kept alive
@@ -18,15 +33,6 @@ server.tomcat.min-Spare-Threads=25
 #The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
 server.tomcat.max-idle-time=60000
 
-
-#Add this properties only if you want to change the URL, AJSC Framework interceptors will intercept
-#com.att.ajsc.common.interceptors.PreInterceptor.url=/**
-#com.att.ajsc.common.interceptors.PostInterceptor.url=/**
-
-#Servlet context parameters
-server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
-kubernetes.namespace={{ include "common.namespace" . }}
-
 # If you get an application startup failure that the port is already taken
 # If thats not it, please check if the key-store file path makes sense
 server.local.startpath=aai-traversal/src/main/resources/
@@ -34,39 +40,45 @@ server.basic.auth.location=${server.local.startpath}etc/auth/realm.properties
 
 server.port=8446
 server.ssl.enabled-protocols=TLSv1.1,TLSv1.2
-server.ssl.key-store=${server.local.startpath}etc/auth/aai_keystore
-server.ssl.key-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
-server.ssl.trust-store=${server.local.startpath}etc/auth/aai_keystore
-server.ssl.trust-store-password=password(OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0)
+server.ssl.key-store=${server.local.startpath}etc/auth/{{ .Values.global.config.keystore.filename }}
+server.ssl.key-store-password=password({{ .Values.global.config.keystore.passwd }})
+server.ssl.trust-store=${server.local.startpath}etc/auth/{{ .Values.global.config.truststore.filename }}
+server.ssl.trust-store-password=password({{ .Values.global.config.truststore.passwd }})
 server.ssl.client-auth=want
 server.ssl.key-store-type=JKS
 
 # JMS bind address host port
 jms.bind.address=tcp://localhost:61647
-dmaap.ribbon.eureka.enabled=false
 dmaap.ribbon.listOfServers=message-router.{{ include "common.namespace" . }}:3904
-# Number of milliseconds to wait before making ping requests again
-dmaap.ribbon.ServerListRefreshInterval=75000
-dmaap.ribbon.NFLoadBalancerPingInterval=75000
-dmaap.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.AvailabilityFilteringRule
-dmaap.ribbon.NFLoadBalancerPingClassName=org.onap.aai.config.HttpPingImpl
-dmaap.ribbon.EnableMarkingServerDownOnReachingFailureLimit=true
-dmaap.ribbon.ServerDownFailureLimit=1
-# This needs to be verified but it seems that adding this property should automatically
-# Make the dmaap client change the url from http to https depending on the server
-dmaap.ribbon.securePorts=3905
 
-# Custom Dmaap Specific Configuration
-dmaap.ribbon.username=
-dmaap.ribbon.password=
-dmaap.ribbon.health.endpoint=/topics/AAI-EVENT
-# Number of seconds to wait for the ping to work and might need to increase this if the pings are all failing
-dmaap.ribbon.pingport.timeout=3
+# Schema related attributes for the oxm and edges
+# Any additional schema related attributes should start with prefix schema
+schema.configuration.location=N/A
+schema.source.name={{ .Values.global.config.schema.source.name }}
+schema.nodes.location=${server.local.startpath}/schema/${schema.source.name}/oxm/
+schema.edges.location=${server.local.startpath}/schema/${schema.source.name}/dbedgerules/
+# Location of where the stored queries are
+schema.queries.location=${server.local.startpath}/schema/${schema.source.name}/query/
+
+schema.ingest.file=${server.local.startpath}/application.properties
+
+# Schema Version Related Attributes
+
+schema.uri.base.path={{ .Values.global.config.schema.uri.base.path }}
+# Lists all of the versions in the schema
+schema.version.list={{ .Values.global.config.schema.version.list }}
+# Specifies from which version should the depth parameter to default to zero
+schema.version.depth.start={{ .Values.global.config.schema.version.depth }}
+# Specifies from which version should the related link be displayed in response payload
+schema.version.related.link.start={{ .Values.global.config.schema.version.related.link }}
+
+# Specifies from which version should the client see only the uri excluding host info
+# Before this version server base will also be included
+schema.version.app.root.start={{ .Values.global.config.schema.version.app.root }}
+# Specifies from which version should the namespace be changed
+schema.version.namespace.change.start={{ .Values.global.config.schema.version.namespace.change }}
+# Specifies from which version should the client start seeing the edge label in payload
+schema.version.edge.label.start={{ .Values.global.config.schema.version.edge.label }}
+# Specifies the version that the application should default to
+schema.version.api.default={{ .Values.global.config.schema.version.api.default }}
 
-niws.loadbalancer.dmaap.filterCircuitTripped=true
-niws.loadbalancer.dmaap.connectionFailureCountThreshold=3
-niws.loadbalancer.dmaap.circuitTripMaxTimeoutSeconds=180
-#dmaap.ribbon.retryableStatusCodes=404,503
-#dmaap.ribbon.retryableStatusCodes.MaxAutoRetriesNextServer=2
-#dmaap.ribbon.retryableStatusCodes.MaxAutoRetries=2
-#dmaap.ribbon.retryableStatusCodes.OkToRetryOnAllOperations=true
index b9216bf..2c22d14 100644 (file)
@@ -23,6 +23,8 @@
 query.fast-property=true
 query.smart-limit=false
 
+{{ if .Values.global.config.cluster.cassandra.dynamic }}
+
 {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
 {{- $global := . }}
 
@@ -35,9 +37,60 @@ storage.cassandra.read-consistency-level=LOCAL_QUORUM
 storage.cassandra.write-consistency-level=LOCAL_QUORUM
 storage.cassandra.replication-factor=3
 storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
-#storage.cassandra.replication-strategy-options=MTA1cass,3
 
-#schema.default=none
+{{ else }}
+
+{{ if .Values.global.config.storage }}
+
+storage.backend={{ .Values.global.config.storage.backend }}
+
+{{ if eq .Values.global.config.storage.backend "cassandra" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cassandra.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cassandra.read-consistency-level={{ .Values.global.config.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.config.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.config.storage.cassandra.replicationFactor | int }}
+storage.cassandra.astyanax.cluster-name= {{ .Values.global.config.storage.clusterName }}
+storage.cassandra.astyanax.local-datacenter= {{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "cql" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cql.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cql.read-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.config.storage.cql.replicationFactor | int }}
+
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.config.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.config.storage.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "hbase" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.hbase.table={{ .Values.global.config.storage.name }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ end }}
+
+{{ end }}
+
+{{ end }}
+
 storage.lock.wait-time=300
 #caching on
 cache.db-cache = true
index a8504dc..b19c9b6 100644 (file)
 query.fast-property=true
 query.smart-limit=false
 
+{{ if .Values.global.config.cluster.cassandra.dynamic }}
+
 {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
 {{- $global := . }}
 
-# the following parameters are not reloaded automatically and require a manual bounce
 storage.backend=cassandra
 storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
 
@@ -34,12 +35,62 @@ storage.cassandra.read-consistency-level=LOCAL_QUORUM
 storage.cassandra.write-consistency-level=LOCAL_QUORUM
 storage.cassandra.replication-factor=3
 storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
-#storage.cassandra.replication-strategy-options=MTA1cass,3
 
-#schema.default=none
+{{ else }}
+
+{{ if .Values.global.config.storage }}
+
+storage.backend={{ .Values.global.config.storage.backend }}
+
+{{ if eq .Values.global.config.storage.backend "cassandra" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cassandra.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cassandra.read-consistency-level={{ .Values.global.config.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.config.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.config.storage.cassandra.replicationFactor | int }}
+storage.cassandra.astyanax.cluster-name= {{ .Values.global.config.storage.clusterName }}
+storage.cassandra.astyanax.local-datacenter= {{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "cql" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.cql.keyspace={{ .Values.global.config.storage.name }}
+
+storage.cql.read-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.config.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.config.storage.cql.replicationFactor | int }}
+
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.config.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.config.storage.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.config.storage.localDataCenter }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ else if eq .Values.global.config.storage.backend "hbase" }}
+
+storage.hostname={{ .Values.global.config.storage.hostname }}
+storage.hbase.table={{ .Values.global.config.storage.name }}
+
+storage.connection-timeout={{ .Values.global.config.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.config.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.config.storage.keyConsistent }}
+
+{{ end }}
+
+{{ end }}
+
+{{ end }}
+
 storage.lock.wait-time=300
 # Setting db-cache to false ensure the fastest propagation of changes across servers
 cache.db-cache = false
-
 #load graphson file on startup
 load.snapshot.file=false
index a318796..4cf6c74 100644 (file)
@@ -1,62 +1,63 @@
-<!--
-
-    ============LICENSE_START=======================================================
-    org.onap.aai
-    ================================================================================
-    Copyright © 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.
-
--->
-<configuration>
-       <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
-       <appender name="ACCESS"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}
-                       </fileNamePattern>
-               </rollingPolicy>
-               <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">
-                       <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>
-               </encoder>
-       </appender>
-       <appender-ref ref="ACCESS" />
-</configuration>
-
-<!-- 
-%a - Remote IP address
-%A - Local IP address
-%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent
-%B - Bytes sent, excluding HTTP headers
-%h - Remote host name
-%H - Request protocol
-%l - Remote logical username from identd (always returns '-')
-%m - Request method
-%p - Local port
-%q - Query string (prepended with a '?' if it exists, otherwise an empty string
-%r - First line of the request
-%s - HTTP status code of the response
-%S - User session ID
-%t - Date and time, in Common Log Format format
-%u - Remote user that was authenticated
-%U - Requested URL path
-%v - Local server name
-%I - current request thread name (can compare later with stacktraces)
-
-%z - Custom pattern that parses the cert for the subject
-%y - Custom pattern determines rest or dme2
- -->
\ No newline at end of file
+<!--\r
+\r
+    ============LICENSE_START=======================================================\r
+    org.onap.aai\r
+    ================================================================================\r
+    Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
+    Modifications Copyright © 2018 Amdocs, Bell Canada\r
+    ================================================================================\r
+    Licensed under the Apache License, Version 2.0 (the "License");\r
+    you may not use this file except in compliance with the License.\r
+    You may obtain a copy of the License at\r
+\r
+       http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+    Unless required by applicable law or agreed to in writing, software\r
+    distributed under the License is distributed on an "AS IS" BASIS,\r
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+    See the License for the specific language governing permissions and\r
+    limitations under the License.\r
+    ============LICENSE_END=========================================================\r
+\r
+    ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
+\r
+-->\r
+<configuration>\r
+       <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />\r
+       <appender name="ACCESS"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <fileNamePattern>${AJSC_HOME}/logs/ajsc-jetty/localhost_access.log.%d{yyyy-MM-dd}\r
+                       </fileNamePattern>\r
+               </rollingPolicy>\r
+               <encoder class="org.onap.aai.logging.CustomLogPatternLayoutEncoder">\r
+                       <Pattern>%a %u %z [%t] "%m %U%q" %s %b %y %i{X-TransactionId} %i{X-FromAppId} %i{X-Forwarded-For} %i{X-AAI-SSL-Client-CN} %i{X-AAI-SSL-Client-OU} %i{X-AAI-SSL-Client-O} %i{X-AAI-SSL-Client-L} %i{X-AAI-SSL-Client-ST} %i{X-AAI-SSL-Client-C} %i{X-AAI-SSL-Client-NotBefore} %i{X-AAI-SSL-Client-NotAfter} %i{X-AAI-SSL-Client-DN} %D</Pattern>\r
+               </encoder>\r
+       </appender>\r
+       <appender-ref ref="ACCESS" />\r
+</configuration>\r
+\r
+<!-- \r
+%a - Remote IP address\r
+%A - Local IP address\r
+%b - Bytes sent, excluding HTTP headers, or '-' if no bytes were sent\r
+%B - Bytes sent, excluding HTTP headers\r
+%h - Remote host name\r
+%H - Request protocol\r
+%l - Remote logical username from identd (always returns '-')\r
+%m - Request method\r
+%p - Local port\r
+%q - Query string (prepended with a '?' if it exists, otherwise an empty string\r
+%r - First line of the request\r
+%s - HTTP status code of the response\r
+%S - User session ID\r
+%t - Date and time, in Common Log Format format\r
+%u - Remote user that was authenticated\r
+%U - Requested URL path\r
+%v - Local server name\r
+%I - current request thread name (can compare later with stacktraces)\r
+\r
+%z - Custom pattern that parses the cert for the subject\r
+%y - Custom pattern determines rest or dme2\r
+ -->\r
index 2ed8f5c..96fe005 100644 (file)
@@ -3,6 +3,7 @@
     org.onap.aai
     ================================================================================
     Copyright © 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.
     </logger>
     <root level="DEBUG">
         <appender-ref ref="external" />
+        {{if .Values.global.config.logback.console.enabled}}
+        <appender-ref ref="STDOUT" />
+        {{ end }}
     </root>
 </configuration>
index f0e0172..962e491 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # format : username: password[,rolename ...]
 # default username/password: AAI/AAI, MSO/MSO, ModelLoader/ModelLoader...
 AAI:OBF:1gfr1ev31gg7,admin
index 373819e..8098369 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: ConfigMap
 metadata:
@@ -53,3 +67,25 @@ metadata:
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-aaf-props
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/aaf/org.osaaf.location.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/permissions.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/org.onap.aai.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/cadi.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-aaf-keys
+  namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/aaf/org.onap.aai.keyfile").AsSecrets . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/org.onap.aai.p12").AsSecrets . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aaf/truststoreONAPall.jks").AsSecrets . | indent 2 }}
index 25cd3a9..3cedaec 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -247,14 +248,20 @@ spec:
           ]'
     spec:
       hostname: aai-traversal
+    {{ if .Values.global.initContainers.enabled }}
       initContainers:
       - command:
+      {{  if .Values.global.jobs.createSchema.enabled  }}
+        - /root/job_complete.py
+        args:
+        - --job-name
+        - {{ .Release.Name }}-aai-graphadmin-create-db-schema
+      {{  else }}
         - /root/ready.py
         args:
         - --container-name
         - aai-cassandra
-        - --container-name
-        - aai-resources
+      {{  end  }}
         env:
         - name: NAMESPACE
           valueFrom:
@@ -264,6 +271,7 @@ spec:
         image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         name: {{ include "common.name" . }}-readiness
+    {{ end }}
       containers:
       - name: {{ include "common.name" . }}
         image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -272,9 +280,9 @@ spec:
         - name: DISABLE_UPDATE_QUERY
           value: {{ .Values.config.disableUpdateQuery | quote }}
         - name: LOCAL_USER_ID
-          value: {{ .Values.config.userId | quote }}
+          value: {{ .Values.global.config.userId | quote }}
         - name: LOCAL_GROUP_ID
-          value: {{ .Values.config.groupId | quote }}
+          value: {{ .Values.global.config.groupId | quote }}
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
@@ -296,12 +304,36 @@ spec:
         - mountPath: /opt/app/aai-traversal/resources/localhost-access-logback.xml
           name: {{ include "common.fullname" . }}-localhost-access-log-conf
           subPath: localhost-access-logback.xml
+        - mountPath: /opt/app/aai-traversal/resources/aaf/org.onap.aai.keyfile
+          name: {{ include "common.fullname" . }}-aaf-certs
+          subPath: org.onap.aai.keyfile
+        - mountPath: /opt/app/aai-traversal/resources/aaf/org.onap.aai.props
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: org.onap.aai.props
+        - mountPath: /opt/app/aai-traversal/resources/aaf/org.osaaf.location.props
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: org.osaaf.location.props
+        - mountPath: /opt/app/aai-traversal/resources/aaf/permissions.properties
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: permissions.properties
+        - mountPath: /opt/app/aai-traversal/resources/cadi.properties
+          name: {{ include "common.fullname" . }}-aaf-properties
+          subPath: cadi.properties
+        - mountPath: /opt/app/aai-traversal/resources/aaf/org.onap.aai.p12
+          name: {{ include "common.fullname" . }}-aaf-certs
+          subPath: org.onap.aai.p12
+        - mountPath: /opt/app/aai-traversal/resources/aaf/truststoreONAPall.jks
+          name: {{ include "common.fullname" . }}-aaf-certs
+          subPath: truststoreONAPall.jks
         - mountPath: /opt/app/aai-traversal/resources/application.properties
           name: {{ include "common.fullname" . }}-springapp-conf
           subPath: application.properties
-        - mountPath: /opt/app/aai-traversal/resources/etc/auth/aai_keystore
-          name: {{ include "common.fullname" . }}-auth-sec
-          subPath: aai_keystore
+          {{ $global := . }}
+          {{ range $job := .Values.global.config.auth.files }}
+        - mountPath: /opt/app/aai-traversal/resources/etc/auth/{{ . }}
+          name: {{ include "common.fullname" $global }}-auth-truststore-sec
+          subPath: {{ . }}
+          {{ end }}
         ports:
         - containerPort: {{ .Values.service.internalPort }}
         - containerPort: {{ .Values.service.internalPort2 }}
@@ -368,15 +400,26 @@ spec:
       - name: {{ include "common.fullname" . }}-aaiconfig-conf
         configMap:
          name: {{ include "common.fullname" . }}-aaiconfig-configmap
+      - name: {{ include "common.fullname" . }}-aaf-properties
+        configMap:
+         name: {{ include "common.fullname" . }}-aaf-props
+      - name: {{ include "common.fullname" . }}-aaf-certs
+        secret:
+         secretName: {{ include "common.fullname" . }}-aaf-keys
       - name: {{ include "common.fullname" . }}-springapp-conf
         configMap:
          name: {{ include "common.fullname" . }}-springapp-configmap
       - name: {{ include "common.fullname" . }}-realm-conf
         configMap:
          name: {{ include "common.fullname" . }}-realm-configmap
-      - name: {{ include "common.fullname" . }}-auth-sec
+      - name: {{ include "common.fullname" . }}-auth-truststore-sec
         secret:
-         secretName: aai-auth-secret
+         secretName: aai-auth-truststore-secret
+         items:
+          {{ range $job := .Values.global.config.auth.files }}
+           - key: {{ . }}
+             path: {{ . }}
+          {{ end }}
       restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 46af004..a018ede 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017-2018 AT&T
+# 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.
@@ -12,6 +13,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+{{ if .Values.global.jobs.updateQueryData.enabled }}
+
 apiVersion: batch/v1
 kind: Job
 metadata:
@@ -58,9 +61,9 @@ spec:
           bash -x /opt/app/aai-traversal/docker-entrypoint.sh install/updateQueryData.sh
         env:
         - name: LOCAL_USER_ID
-          value: "1000"
+          value: {{ .Values.global.config.userId | quote }}
         - name: LOCAL_GROUP_ID
-          value: "1000"
+          value: {{ .Values.global.config.groupId | quote }}
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
@@ -85,9 +88,12 @@ spec:
         - mountPath: /opt/app/aai-traversal/resources/application.properties
           name: {{ include "common.fullname" . }}-springapp-conf
           subPath: application.properties
-        - mountPath: /opt/app/aai-traversal/resources/etc/auth/aai_keystore
-          name: {{ include "common.fullname" . }}-auth-sec
-          subPath: aai_keystore
+          {{ $global := . }}
+          {{ range $job := .Values.global.config.auth.files }}
+        - mountPath: /opt/app/aai-traversal/resources/etc/auth/{{ . }}
+          name: {{ include "common.fullname" $global }}-auth-truststore-sec
+          subPath: {{ . }}
+          {{ end }}
         # disable liveness probe when breakpoints set in debugger
         # so K8s doesn't restart unresponsive container
       volumes:
@@ -123,9 +129,15 @@ spec:
       - name: {{ include "common.fullname" . }}-realm-conf
         configMap:
          name: {{ include "common.fullname" . }}-realm-configmap
-      - name: {{ include "common.fullname" . }}-auth-sec
+      - name: {{ include "common.fullname" . }}-auth-truststore-sec
         secret:
-         secretName: aai-auth-secret
+         secretName: aai-auth-truststore-secret
+         items:
+          {{ range $job := .Values.global.config.auth.files }}
+           - key: {{ . }}
+             path: {{ . }}
+          {{ end }}
       restartPolicy: OnFailure
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
+{{ end }}
index 9ba61fa..d119912 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index 5cc49a4..a3410ad 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Default values for traversal.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
@@ -9,15 +23,23 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/aai-traversal:1.2.2
+image: onap/aai-traversal:1.3-STAGING-latest
 pullPolicy: Always
 restartPolicy: Always
 
 # application configuration
 config:
-  aaicoreversion: 1.1.0-SNAPSHOT
-  userId: 1000
-  groupId: 1000
+
+  # Specifies timeout information such as application specific and limits
+  timeout:
+    # If set to true application will timeout for queries taking longer than limit
+    enabled: true
+    # Specifies which apps (X-FromAppId) header should get overridden and (-1) no timeout
+    appspecific: JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAI-FILEGEN-GFPIP,-1
+    # Specifies how long should it wait before timing out the REST request
+    limit: 180000
+
+  # Disables the updateQueryData script to run as part of traversal
   disableUpdateQuery: true
 
 persistence:
index 56029ab..222e7f2 100644 (file)
@@ -1,7 +1,21 @@
+# Copyright © 2018 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.
+
 dependencies:
   - name: common
     version: ~2.0.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
+    repository: '@local'
diff --git a/kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb b/kubernetes/aai/resources/config/aai-data/chef-config/dev/.knife/solo.rb
deleted file mode 100644 (file)
index 3d903ad..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-current_dir = File.dirname(__FILE__)
-org         = ENV['CHEF_ORG']     || "aai-dev"
-env         = ENV['AAI_CHEF_ENV'] || "dev"
-env_path    = ENV['AAI_CHEF_LOC'] || ""
-node_name                "chef-node"
-cookbook_path [ "/var/chef/aai-config/cookbooks" ]
-environment_path "#{env_path}"
-log_level :info
-log_location STDOUT
\ No newline at end of file
diff --git a/kubernetes/aai/resources/config/aai-data/environments/README.md b/kubernetes/aai/resources/config/aai-data/environments/README.md
deleted file mode 100644 (file)
index 3fa254d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-Requires Chef 0.10.0+.
-
-This directory is for Ruby DSL and JSON files for environments. 
-It will contain the A&AI environment files.
-For more information see "About Environments" in the Chef documentation:
-
-http://docs.chef.io/environments.html
-
diff --git a/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json b/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json
deleted file mode 100644 (file)
index 598a3ba..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-{
-  "name": "simpledemo",
-  "description": "Development Environment",
-  "cookbook_versions": {
-               "aai-traversal-auth" : "= 1.0.0",
-               "aai-traversal-config" : "= 1.0.0",
-               "aai-traversal-process" : "= 1.0.0",
-
-               "aai-resources-auth" : "= 1.0.0",
-               "aai-resources-config" : "= 1.0.0",
-               "aai-resources-process" : "= 1.0.0"
-  },
-  "json_class": "Chef::Environment",
-  "chef_type": "environment",
-  "default_attributes": {
-    "aai-traversal-config": {
-               "SERVICE_API_VERSION": "1.0.1",
-               "SOA_CLOUD_NAMESPACE": "org.openecomp.aai",
-               "AJSC_SERVICE_NAMESPACE": "traversal",
-               "AFTSWM_ACTION_ARTIFACT_NAME": "traversal",
-               "AJSC_JETTY_ThreadCount_MAX": "500",
-               "AJSC_JETTY_ThreadCount_MIN": "10",
-               "AJSC_SSL_PORT": "8446",
-               "AJSC_SVC_PORT": "8083",
-               "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "MAX_HEAP_SIZE": "2056m",
-               "MAX_PERM_SIZE": "512M",
-               "MIN_HEAP_SIZE": "2056m",
-               "PERM_SIZE": "512M",
-               "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
-               "AAIENV": "dev",
-               "PROJECT_HOME": "/opt/app/aai-traversal",
-               "LOGROOT": "/opt/aai/logroot",
-               "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
-               "AAI_SERVER_URL_BASE": "https:/aai.{{.Release.Namespace}}:8443/aai/",
-               "AAI_SERVER_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/v11/",
-               "AAI_GLOBAL_CALLBACK_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/",
-               "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
-               "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "AAI_KEYSTORE_FILENAME": "aai_keystore",
-               "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
-               "AAI_DMAAP_PROTOCOL": "http",
-               "AAI_DMAAP_HOST_PORT": "message-router.{{.Release.Namespace}}:3904",
-               "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
-               "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
-               "RESOURCE_VERSION_ENABLE_FLAG": "true",
-               "TXN_HBASE_TABLE_NAME": "aailogging.dev",
-               "TXN_ZOOKEEPER_QUORUM": "aai-hbase.{{.Release.Namespace}}",
-               "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
-               "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
-               "STORAGE_HOSTNAME": "aai-hbase.{{.Release.Namespace}}",
-               "STORAGE_HBASE_TABLE": "aaigraph.dev",
-               "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "DB_CACHE_CLEAN_WAIT": "20",
-               "DB_CACHE_TIME": "180000",
-               "DB_CACHE_SIZE": "0.3",
-               "AAI_DEFAULT_API_VERSION": "v11"
-    },
-        "aai-resources-config": {
-               "SERVICE_API_VERSION": "1.0.1",
-               "AJSC_SERVICE_NAMESPACE": "aai-resources",
-               "AFTSWM_ACTION_ARTIFACT_NAME": "aai-resources",
-               "AJSC_JETTY_ThreadCount_MAX": "500",
-               "AJSC_JETTY_ThreadCount_MIN": "10",
-               "AJSC_SSL_PORT": "8447",
-               "AJSC_SVC_PORT": "8087",
-               "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "MAX_HEAP_SIZE": "2056m",
-               "MAX_PERM_SIZE": "512M",
-               "MIN_HEAP_SIZE": "2056m",
-               "PERM_SIZE": "512M",
-               "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
-               "AAIENV": "dev",
-               "PROJECT_HOME": "/opt/app/aai-resources",
-               "LOGROOT": "/opt/aai/logroot",
-               "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
-               "AAI_SERVER_URL_BASE": "https:/aai.{{.Release.Namespace}}:8443/aai/",
-               "AAI_SERVER_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/v11/",
-               "AAI_GLOBAL_CALLBACK_URL": "https:/aai.{{.Release.Namespace}}:8443/aai/",
-               "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
-               "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "AAI_KEYSTORE_FILENAME": "aai_keystore",
-               "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
-               "AAI_DMAAP_PROTOCOL": "http",
-               "AAI_DMAAP_HOST_PORT": "message-router.{{.Release.Namespace}}:3904",
-               "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
-               "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
-               "RESOURCE_VERSION_ENABLE_FLAG": "true",
-               "TXN_HBASE_TABLE_NAME": "aailogging.dev",
-               "TXN_ZOOKEEPER_QUORUM": "aai-hbase.{{.Release.Namespace}}",
-               "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
-               "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
-               "STORAGE_HOSTNAME": "aai-hbase.{{.Release.Namespace}}",
-               "STORAGE_HBASE_TABLE": "aaigraph.dev",
-               "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "DB_CACHE_CLEAN_WAIT": "20",
-               "DB_CACHE_TIME": "180000",
-               "DB_CACHE_SIZE": "0.3",
-               "AAI_DEFAULT_API_VERSION": "v11"
-    }
-  },
-  "override_attributes": {
-  }
-}
diff --git a/kubernetes/aai/resources/config/aai-data/environments/solo.json b/kubernetes/aai/resources/config/aai-data/environments/solo.json
deleted file mode 100644 (file)
index ac83173..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-{
-  "name": "local",
-  "description": "Development Environment",
-  "cookbook_versions": {
-               "aai-traversal-auth" : "= 1.0.0",
-               "aai-traversal-config" : "= 1.0.0",
-               "aai-traversal-process" : "= 1.0.0",
-
-               "aai-resources-auth" : "= 1.0.0",
-               "aai-resources-config" : "= 1.0.0",
-               "aai-resources-process" : "= 1.0.0"
-  },
-  "json_class": "Chef::Environment",
-  "chef_type": "environment",
-  "default_attributes": {
-    "aai-traversal-config": {
-               "SERVICE_API_VERSION": "1.0.1",
-               "AJSC_SERVICE_NAMESPACE": "traversal",
-               "AFTSWM_ACTION_ARTIFACT_NAME": "traversal",
-               "AJSC_JETTY_ThreadCount_MAX": "500",
-               "AJSC_JETTY_ThreadCount_MIN": "10",
-               "AJSC_SSL_PORT": "8446",
-               "AJSC_SVC_PORT": "8083",
-               "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "MAX_HEAP_SIZE": "2056m",
-               "MAX_PERM_SIZE": "512M",
-               "MIN_HEAP_SIZE": "2056m",
-               "PERM_SIZE": "512M",
-               "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
-               "AAIENV": "dev",
-               "PROJECT_HOME": "/opt/app/aai-traversal",
-               "LOGROOT": "/opt/aai/logroot",
-               "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
-               "AAI_SERVER_URL_BASE": "https://localhost:8443/aai/",
-               "AAI_SERVER_URL": "https://localhost:8443/aai/v11/",
-               "AAI_GLOBAL_CALLBACK_URL": "https://localhost:8443/aai/",
-               "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
-               "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "AAI_KEYSTORE_FILENAME": "aai_keystore",
-               "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "APPLICATION_SERVERS": "localhost",
-               "AAI_DMAAP_PROTOCOL": "http",
-               "AAI_DMAAP_HOST_PORT": "localhost:3904",
-               "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
-               "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
-               "RESOURCE_VERSION_ENABLE_FLAG": "true",
-               "TXN_HBASE_TABLE_NAME": "aailogging.dev",
-               "TXN_ZOOKEEPER_QUORUM": "localhost",
-               "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
-               "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
-               "STORAGE_HOSTNAME": "localhost",
-               "STORAGE_HBASE_TABLE": "aaigraph.dev",
-               "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "DB_CACHE_CLEAN_WAIT": "20",
-               "DB_CACHE_TIME": "180000",
-               "DB_CACHE_SIZE": "0.3",
-               "AAI_DEFAULT_API_VERSION": "v11"
-    },
-        "aai-resources-config": {
-               "SERVICE_API_VERSION": "1.0.1",
-               "AJSC_SERVICE_NAMESPACE": "aai-resources",
-               "AFTSWM_ACTION_ARTIFACT_NAME": "aai-resources",
-               "AJSC_JETTY_ThreadCount_MAX": "500",
-               "AJSC_JETTY_ThreadCount_MIN": "10",
-               "AJSC_SSL_PORT": "8447",
-               "AJSC_SVC_PORT": "8087",
-               "KEY_MANAGER_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "KEY_STORE_PASSWORD": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "MAX_HEAP_SIZE": "2056m",
-               "MAX_PERM_SIZE": "512M",
-               "MIN_HEAP_SIZE": "2056m",
-               "PERM_SIZE": "512M",
-               "PRE_JVM_ARGS": "-XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:-HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps",
-               "AAIENV": "dev",
-               "PROJECT_HOME": "/opt/app/aai-resources",
-               "LOGROOT": "/opt/aai/logroot",
-               "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64",
-               "AAI_SERVER_URL_BASE": "https://localhost:8443/aai/",
-               "AAI_SERVER_URL": "https://localhost:8443/aai/v11/",
-               "AAI_GLOBAL_CALLBACK_URL": "https://localhost:8443/aai/",
-               "AAI_TRUSTSTORE_FILENAME": "aai_keystore",
-               "AAI_TRUSTSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "AAI_KEYSTORE_FILENAME": "aai_keystore",
-               "AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
-               "APPLICATION_SERVERS": "localhost",
-               "AAI_DMAAP_PROTOCOL": "http",
-               "AAI_DMAAP_HOST_PORT": "localhost:3904",
-               "AAI_DMAAP_TOPIC_NAME": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_STATUS": "UNPROCESSED",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_EVENT_TYPE": "AAI-EVENT",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_DOMAIN": "dev",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SOURCE_NAME": "aai",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEQUENCE_NUMBER": "0",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_SEVERITY": "NORMAL",
-               "AAI_NOTIFICATION_EVENT_DEFAULT_VERSION": "v11",
-               "AAI_NOTIFICATION_CURRENT_VERSION": "v11",
-               "RESOURCE_VERSION_ENABLE_FLAG": "true",
-               "TXN_HBASE_TABLE_NAME": "aailogging.dev",
-               "TXN_ZOOKEEPER_QUORUM": "localhost",
-               "TXN_ZOOKEEPER_PROPERTY_CLIENTPORT": "2181",
-               "TXN_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "AAI_WORKLOAD_PREFERRED_ROUTE_KEY": "MR1",
-               "STORAGE_HOSTNAME": "localhost",
-               "STORAGE_HBASE_TABLE": "aaigraph.dev",
-               "STORAGE_HBASE_ZOOKEEPER_ZNODE_PARENT": "/hbase",
-               "DB_CACHE_CLEAN_WAIT": "20",
-               "DB_CACHE_TIME": "180000",
-               "DB_CACHE_SIZE": "0.3",
-               "AAI_DEFAULT_API_VERSION": "v11"
-    }
-  },
-  "override_attributes": {
-  }
-}
index e90f737..8beae0e 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 global
         log /dev/log    local0
         stats socket /usr/local/etc/haproxy/haproxy.socket mode 660 level admin
index b0d4690..39cc6db 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index 00d2a80..bd5f9b9 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # this is a shared resource for subcharts
 apiVersion: v1
 kind: ConfigMap
@@ -28,10 +42,10 @@ data:
 apiVersion: v1
 kind: Secret
 metadata:
-  name: aai-auth-secret
+  name: aai-auth-truststore-secret
   namespace: {{ include "common.namespace" . }}
 type: Opaque
 data:
-{{ tpl (.Files.Glob "resources/config/aai/aai_keystore").AsSecrets . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aai/*").AsSecrets . | indent 2 }}
 
 
index 46d7c64..dc65cef 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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: extensions/v1beta1
 kind: Deployment
 metadata:
@@ -16,6 +31,8 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
       name: {{ .Release.Name }}
+      annotations:
+        checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
     spec:
       initContainers:
       - command:
index a2f96a8..29c13f9 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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: v1
 kind: Service
 metadata:
index b07048e..99699a0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -20,14 +21,19 @@ global: # global defaults
   repository: nexus3.onap.org:10001
   dockerhubRepository: docker.io
   busyboxImage: busybox
+
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
+
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
+
   restartPolicy: Always
+
   cassandra:
     serviceName: aai-cassandra
     replicas: 3
+
   aai:
     serviceName: aai
   babel:
@@ -36,8 +42,6 @@ global: # global defaults
     serviceName: aai-champ
   aaiElasticsearch:
     serviceName: aai-elasticsearch
-  hbase:
-    serviceName: aai-hbase
   resources:
     serviceName: aai-resources
   sparkyBe:
@@ -52,7 +56,140 @@ global: # global defaults
     serviceName: aai-search-data
   traversal:
     serviceName: aai-traversal
+  graphadmin:
+    serviceName: aai-graphadmin
+  spike:
+    serviceName: aai-spike
+
+  initContainers:
+    enabled: true
+  # Specifies a list of jobs to be run
+  jobs:
+    # When enabled, it will create the schema based on oxm and edge rules
+    createSchema:
+      enabled: true
+    # When enabled, it will create the widget models via REST API to haproxy
+    updateQueryData:
+      enabled: true
+
+  # Common configuration for resources traversal and graphadmin
+  config:
+    # User information for the admin user in container
+    userId: 1000
+    groupId: 1000
+
+    # Specifies that the cluster connected to a dynamic
+    # cluster being spinned up by kubernetes deployment
+    cluster:
+      cassandra:
+        dynamic: true
+
+    # If cluster.cassandra.dynamic is set to false
+    # Then the following configuration should be uncommented
+    # This is if you are planning to connect to a existing
+    # Cassandra cluster instead of doing the deployment
+    #storage:
+    #  backend: cassandra
+    #  hostname: somehost1,somehost2,somehost3
+    #  connectionTimeout: 100000
+    #  cacheSize: 1000000
+    #  clusterName: someClusterName
+    #  localDataCenter: someDataCenter
+    #  keyConsistent: true
+    #  # If backend is cql or cassandra it should be keyspace name
+    #  # else backend is hbase it should be hbase table name
+    #  name: your_hbase_table_or_keyspace_name
+
+    #  # CQL driver specific properties for janusgraph
+    #  cql:
+    #    # Name of the Cassandra Cluster
+    #    cluster: someclustername
+    #    readConsistency: QUORUM
+    #    writeConsistency: QUORUM
+    #    replicationFactor: 3
+    #    localConsistencyForSysOps: true
 
+    #  # Cassandra driver specific properties for janusgraph
+    #  cassandra:
+    #    # Name of the Cassandra Cluster
+    #    cluster: someclustername
+    #    readConsistency: LOCAL_QUORUM
+    #    writeConsistency: LOCAL_QUORUM
+    #    replicationFactor: 3
+
+    # Specifies if the basic authorization is enabled
+    basic:
+      auth:
+        enabled: true
+        username: AAI
+        passwd: AAI
+
+    # Active spring profiles for the resources microservice
+    profiles:
+      active: production,dmaap,one-way-ssl
+
+    # Notification event specific properties
+    notification:
+      eventType: AAI-EVENT
+      domain: dev
+
+    # Schema specific properties that include supported versions of api
+    schema:
+      source:
+        # Specifies which folder to take a look at
+        name: onap
+      uri:
+        # Base URI Path of the application
+        base:
+          path: /aai
+      version:
+        # Current version of the REST API
+        api:
+          default: v14
+        # Specifies which version the depth parameter is configurable
+        depth: v9
+        # List of all the supported versions of the API
+        list: v8,v9,v10,v11,v12,v13,v14
+        # Specifies from which version related link should appear
+        related:
+          link: v10
+        # Specifies from which version the app root change happened
+        app:
+          root: v11
+        # Specifies from which version the xml namespace changed
+        namespace:
+          change: v12
+        # Specifies from which version the edge label appeared in API
+        edge:
+          label: v12
+
+    # Keystore configuration password and filename
+    keystore:
+      filename: aai_keystore
+      passwd: OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+
+    # Truststore configuration password and filename
+    truststore:
+      filename: aai_keystore
+      passwd: OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0
+
+    # Specifies a list of files to be included in auth volume
+    auth:
+      files:
+        - aai_keystore
+
+    # Specifies which clients should always default to realtime graph connection
+    realtime:
+      clients: SDNC,MSO,SO,robot-ete
+
+    # Logback debug enabled
+    logback:
+      console:
+        # If enabled, container will print all logback to standard output
+        # This will make debugging much easier but it should only be done
+        # when debugging the issue and changed back as it can affect performance
+        # since when this is enabled, it prints a lot of information to console
+        enabled: false
 
 # application image
 dockerhubRepository: registry.hub.docker.com
@@ -120,4 +257,4 @@ resources: {}
 #    memory: 4Gi
 #  requests:
 #    cpu: 2
-#    memory: 4Gi
+#    memory: 4Gi
\ No newline at end of file
index ca35cd1..42fdbd6 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
diff --git a/kubernetes/appc/charts/appc-ansible-server/Chart.yaml b/kubernetes/appc/charts/appc-ansible-server/Chart.yaml
new file mode 100644 (file)
index 0000000..f332ba4
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 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: v1
+description: ONAP APPC Ansible Server
+name: appc-ansible-server
+version: 2.0.0
diff --git a/kubernetes/appc/charts/appc-ansible-server/requirements.yaml b/kubernetes/appc/charts/appc-ansible-server/requirements.yaml
new file mode 100644 (file)
index 0000000..ee69d6a
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 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.
+
+dependencies:
+  - name: common
+    version: ~2.0.0
+    repository: '@local'
diff --git a/kubernetes/appc/charts/appc-ansible-server/resources/config/RestServer_config b/kubernetes/appc/charts/appc-ansible-server/resources/config/RestServer_config
new file mode 100644 (file)
index 0000000..73d963d
--- /dev/null
@@ -0,0 +1,45 @@
+# Copyright © 2018 AT&T, 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.
+
+# Host definition
+ip:    0.0.0.0
+port:  {{.Values.service.internalPort}}
+
+# Security (controls use of TLS encrypton and RestServer authentication)
+tls:   no
+auth:  no
+
+# TLS certificates (must be built on application host)
+priv:  provide_privated_key.pem
+pub:   provide_public_key.pem
+
+# RestServer authentication
+id:    sdnc
+psswd: sdnc
+
+# Mysql
+host:  {{.Values.config.mysqlServiceName}}
+user:  appc
+passwd:        appc
+db:    ansible
+
+# Playbooks
+from_files:            yes
+ansible_path:          /opt/onap/sdnc/Playbooks
+ansible_inv:           Ansible_inventory
+ansible_temp:          PlaybooksTemp
+timeout_seconds:       60
+
+# Blocking on GetResults
+getresults_block:      yes
diff --git a/kubernetes/appc/charts/appc-ansible-server/templates/configmap.yaml b/kubernetes/appc/charts/appc-ansible-server/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..783c814
--- /dev/null
@@ -0,0 +1,26 @@
+# Copyright © 2018 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: v1
+kind: ConfigMap
+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 }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/appc/charts/appc-ansible-server/templates/deployment.yaml b/kubernetes/appc/charts/appc-ansible-server/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..8fb2776
--- /dev/null
@@ -0,0 +1,96 @@
+# Copyright © 2018 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: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - {{ .Values.config.appcChartName }}
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      containers:
+        - name: {{ include "common.name" . }}
+          command: ["/bin/bash"]
+          args: ["-c", "cd /opt/onap/sdnc && ./startAnsibleServer.sh"]
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{ if .Values.liveness.enabled }}
+          livenessProbe:
+            tcpSocket:
+              port: {{ .Values.service.internalPort }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end }}
+          readinessProbe:
+            tcpSocket:
+              port: {{ .Values.service.internalPort }}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: true
+          - mountPath: {{ .Values.config.configDir }}/RestServer_config
+            name: config
+            subPath: RestServer_config
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name: config
+          configMap:
+            name: {{ include "common.fullname" . }}
+            defaultMode: 0644
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/appc/charts/appc-ansible-server/templates/service.yaml b/kubernetes/appc/charts/appc-ansible-server/templates/service.yaml
new file mode 100644 (file)
index 0000000..3325d6b
--- /dev/null
@@ -0,0 +1,33 @@
+# Copyright © 2018  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.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ .Values.service.name }}
+  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:
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.name }}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 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.
@@ -17,7 +17,6 @@
 #################################################################
 global:
   nodePortPrefix: 302
-  repository: nexus3.onap.org:10001
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
   loggingRepository: docker.elastic.co
@@ -28,12 +27,19 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/vnfsdk/refrepo/postgres:1.1.1
+image: onap/sdnc-ansible-server-image:1.4-STAGING-latest
 pullPolicy: Always
 
 # flag to enable debugging - application support required
 debugEnabled: false
 
+# application configuration
+config:
+  appcChartName: appc
+  mysqlServiceName: appc-dbhost
+
+
+# default number of instances
 replicaCount: 1
 
 nodeSelector: {}
@@ -42,22 +48,31 @@ affinity: {}
 
 # probe configuration parameters
 liveness:
-  initialDelaySeconds: 10
+  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: 10
+  initialDelaySeconds: 60
   periodSeconds: 10
 
 service:
   type: ClusterIP
-  name: vnfsdk-postgres
-  portName: vnfsdk-postgres
-  internalPort: 5432
-  externalPort: 5432
+  name: appc-ansible-server
+  portName: appc-ansible-server
+  internalPort: 8000
+  externalPort: 8000
 
 ingress:
   enabled: false
+
+resources: {}
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
index b7720f7..228a522 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: v1
 description: ONAP APPC Self Service Controller Design Tool
 name: appc-cdt
index 8cddd30..a72a96a 100644 (file)
@@ -1,3 +1,17 @@
+# 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: ~2.0.0
index c4b9989..1a7dbc5 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 8ac5d3e..9c83c2c 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 86442a2..735e0f5 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: v1
 kind: Service
 metadata:
index 67cf8d5..f472152 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 #################################################################
 # Global configuration defaults.
 #################################################################
index 1ca4de1..67e33ba 100644 (file)
@@ -1,10 +1,24 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 dependencies:
   - name: common
     version: ~2.0.0
     repository: '@local'
-  - name: mysql
+  - name: mariadb-galera
     version: ~2.0.0
     repository: '@local'
   - name: dgbuilder
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 544358c..481163a 100755 (executable)
@@ -1,4 +1,17 @@
 #!/bin/bash -x
+# 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.
 
 startODL_status=$(ps -e | grep startODL | wc -l)
 waiting_bundles=$(/opt/opendaylight/current/bin/client bundle:list | grep Waiting | wc -l)
index abc2935..b3cf868 100755 (executable)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -20,7 +21,7 @@
 
 SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
 APPC_HOME=${APPC_HOME:-/opt/onap/appc}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.mariadbRootPassword}}}
 
 APPC_DB_USER=${APPC_DB_USER:-appcctl}
 APPC_DB_PASSWD=${APPC_DB_PASSWD:-appcctl}
@@ -28,7 +29,7 @@ APPC_DB_DATABASE=${SDN_DB_DATABASE:-appcctl}
 
 
 # Create tablespace and user account
-mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} mysql <<-END
+mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} mysql <<-END
 CREATE DATABASE ${APPC_DB_DATABASE};
 CREATE USER '${APPC_DB_USER}'@'localhost' IDENTIFIED BY '${APPC_DB_PASSWD}';
 CREATE USER '${APPC_DB_USER}'@'%' IDENTIFIED BY '${APPC_DB_PASSWD}';
@@ -39,16 +40,16 @@ END
 
 if [ -f ${APPC_HOME}/data/appcctl.dump ]
 then
-  mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} appcctl < ${APPC_HOME}/data/appcctl.dump
+  mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} appcctl < ${APPC_HOME}/data/appcctl.dump
 fi
 
 if [ -f ${APPC_HOME}/data/sdnctl.dump ]
 then
-  mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${APPC_HOME}/data/sdnctl.dump
+  mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${APPC_HOME}/data/sdnctl.dump
 fi
 
 if [ -f ${APPC_HOME}/data/sqlData.dump ]
 then
-  mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${APPC_HOME}/data/sqlData.dump
+  mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${APPC_HOME}/data/sqlData.dump
 fi
 
index 18a2783..3cbee8d 100755 (executable)
@@ -5,6 +5,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -53,7 +54,7 @@ ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-admin}
 SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
 APPC_HOME=${APPC_HOME:-/opt/onap/appc}
 SLEEP_TIME=${SLEEP_TIME:-120}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.mariadbRootPassword}}}
 ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
 ENABLE_AAF=${ENABLE_AAF:-false}
 AAF_EXT_IP=${AAF_EXT_IP:-{{.Values.config.aafExtIP}}}
@@ -82,13 +83,13 @@ echo "" >> $APPC_HOME/data/properties/appc.properties
 #
 # Wait for database to init properly
 #
-echo "Waiting for mysql"
-until mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p{{.Values.config.dbRootPassword}} mysql &> /dev/null
+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 "\nmysql ready"
+echo -e "\nmariadbgalera ready"
 
 if [ ! -f ${SDNC_HOME}/.installed ]
 then
@@ -160,7 +161,7 @@ then
                 running=0
                 while read a b c d e f g h
                 do
-                if [ "$h" == "/bin/sh /opt/opendaylight/current/bin/karaf server" ]
+                if [ "$h" == "/bin/sh /opt/opendaylight/bin/karaf server" ]
                 then
                      running=1
                 fi
@@ -184,5 +185,5 @@ fi
 echo "Starting cdt-proxy-service jar, logging to ${APPC_HOME}/cdt-proxy-service/jar.log"
 java -jar ${APPC_HOME}/cdt-proxy-service/cdt-proxy-service.jar > ${APPC_HOME}/cdt-proxy-service/jar.log &
 
-exec ${ODL_HOME}/bin/karaf
+exec ${ODL_HOME}/bin/karaf server
 
index 31bc4e3..3dd78d3 100644 (file)
@@ -5,6 +5,7 @@
 # APPC
 # ================================================================================
 # Copyright (C) 2018 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.
index 3ce7483..6bd48e3 100644 (file)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
index 6631da4..47c6788 100644 (file)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -31,9 +32,9 @@ appc.demo.threads.queuesize.max=1000
 appc.demo.threads.poolsize.min=1
 appc.demo.threads.poolsize.max=2
 appc.demo.provider.user=admin
-appc.demo.provider.pass=admin
+appc.demo.provider.pass={{.Values.config.odlPassword}}
 appc.demo.provider.url=http://localhost:8181/restconf/operations/appc-provider
-appc.provider.vfodl.url=http://admin:admin@{{.Values.service.name}}:{{.Values.service.externalPort}}/restconf/config/network-topology:network-topology/topology/topology-netconf/node/NODE_NAME/yang-ext:mount/sample-plugin:sample-plugin/pg-streams/
+appc.provider.vfodl.url=http://admin:{{.Values.config.odlPassword}}@{{.Values.service.name}}:{{.Values.service.externalPort}}/restconf/config/network-topology:network-topology/topology/topology-netconf/node/NODE_NAME/yang-ext:mount/sample-plugin:sample-plugin/pg-streams/
 
 # The properties right below are needed to properly call the Master DG to serve demo purposes
 appc.service.logic.module.name=APPC
@@ -41,11 +42,11 @@ appc.topology.dg.method=topology-operation-all
 appc.topology.dg.version=2.0.0
 
 # TEMP - Properties that might be needed to make the AAI-APPC connection
-org.onap.appc.db.url.appcctl=jdbc:mysql://{{.Values.mysql.service.name}}:3306/appcctl
+org.onap.appc.db.url.appcctl=jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}:3306/appcctl
 org.onap.appc.db.user.appcctl=appcctl
 org.onap.appc.db.pass.appcctl=appcctl
 
-org.onap.appc.db.url.sdnctl=jdbc:mysql://{{.Values.mysql.service.name}}:3306/sdnctl
+org.onap.appc.db.url.sdnctl=jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}:3306/sdnctl
 org.onap.appc.db.user.sdnctl=sdnctl
 org.onap.appc.db.pass.sdnctl=gamma
 
@@ -79,7 +80,7 @@ appc.LCM.topic.read=APPC-LCM-READ
 appc.LCM.topic.write=APPC-LCM-WRITE
 appc.LCM.client.name=APPC-EVENT-LISTENER-TEST
 appc.LCM.provider.user=admin
-appc.LCM.provider.pass=admin
+appc.LCM.provider.pass={{.Values.config.odlPassword}}
 appc.LCM.provider.url=http://localhost:8181/restconf/operations/appc-provider-lcm
 appc.LCM.scopeOverlap.endpoint=http://localhost:8181/restconf/operations/interfaces-service:execute-service
 
@@ -87,7 +88,7 @@ appc.LCM.scopeOverlap.endpoint=http://localhost:8181/restconf/operations/interfa
 poolMembers=message-router.{{.Release.Namespace}}:3904
 event.pool.members=message-router.{{.Release.Namespace}}:3904
 restconf.user=admin
-restconf.pass=admin
+restconf.pass={{.Values.config.odlPassword}}
 
 
 # properties found in appc-rest-adapter-bundle, appc-chef-adapter-bundle, appc-iaas-adapter-bundle)
@@ -126,4 +127,4 @@ appc.OAM.topic.read=testOAM
 appc.OAM.topic.write=testOAM
 appc.OAM.client.name=testOAM
 appc.OAM.provider.user=admin
-appc.OAM.provider.pass=admin
+appc.OAM.provider.pass={{.Values.config.odlPassword}}
index 17b7ffd..a566052 100644 (file)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -21,8 +22,8 @@
 # dblib.properrties
 org.onap.ccsdk.sli.dbtype=jdbc
 
-org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.hosts=dbhost
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
 org.onap.ccsdk.sli.jdbc.database=sdnctl
 org.onap.ccsdk.sli.jdbc.user=sdnctl
index fd62b08..5b22ccb 100644 (file)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -20,7 +21,7 @@
 
 org.onap.ccsdk.sli.dbtype = dblib
 #Note : the next 4 fields are only used if org.onap.ccsdk.sli.dbtype = jdbc
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.database=sdnctl
 org.onap.ccsdk.sli.jdbc.user=sdnctl
 org.onap.ccsdk.sli.jdbc.password=gamma
index 03ad425..92e8a36 100755 (executable)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -22,7 +23,7 @@
 MYSQL_USER=${MYSQL_USER:-sdnctl}
 MYSQL_PWD=${MYSQL_PWD:-gamma}
 MYSQL_DB=${MYSQL_DB:-sdnctl}
-MYSQL_HOST=${MYSQL_HOST:-{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+MYSQL_HOST=${MYSQL_HOST:-{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}}
 
 mysql --user=${MYSQL_USER} --password=${MYSQL_PWD} --host=${MYSQL_HOST} ${MYSQL_DB} <<-END
 SELECT module, rpc, version, mode from SVC_LOGIC where active='Y';
index bd581e0..247e1ac 100644 (file)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
@@ -20,7 +21,7 @@
 ###
 
 org.onap.ccsdk.sli.dbtype = jdbc
-org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.database = sdnctl
 org.onap.ccsdk.sli.jdbc.user = sdnctl
 org.onap.ccsdk.sli.jdbc.password = gamma
index deca2ff..da16d39 100755 (executable)
@@ -6,6 +6,7 @@
 # ================================================================================
 # 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.
@@ -22,7 +23,7 @@
 ###
 
 SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
-MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.mariadbRootPassword}}}
 
 SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
 SDNC_DB_PASSWD=${SDNC_DB_PASSWD:-gamma}
@@ -30,7 +31,7 @@ SDNC_DB_DATABASE=${SDN_DB_DATABASE:-sdnctl}
 
 
 # Create tablespace and user account
-mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} mysql <<-END
+mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -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}';
@@ -41,6 +42,6 @@ END
 
 if [ -f ${SDNC_HOME}/data/odlsli.dump ]
 then
-mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/odlsli.dump
+mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/odlsli.dump
 fi
 
index a84893c..231fd0a 100755 (executable)
@@ -6,6 +6,7 @@
 # ================================================================================
 # 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.
@@ -28,18 +29,18 @@ 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.dbRootPassword}}}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.mariadbRootPassword}}}
 
 #
 # Wait for database
 #
-echo "Waiting for mysql"
-until mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p{{.Values.config.dbRootPassword}} mysql &> /dev/null
+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 "\nmysql ready"
+echo -e "\nmariadbgalera ready"
 
 if [ ! -f ${SDNC_HOME}/.installed ]
 then
index 1afbf93..80c4703 100644 (file)
@@ -3,6 +3,7 @@
 # APPC
 # ================================================================================
 # 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.
index f603977..6142032 100644 (file)
@@ -4,6 +4,7 @@
 # ================================================================================
 # 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.
@@ -22,8 +23,8 @@
 # dblib.properrties
 org.onap.ccsdk.sli.dbtype=jdbc
 
-org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.hosts=dbhost
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
 org.onap.ccsdk.sli.jdbc.database=sdnctl
 org.onap.ccsdk.sli.jdbc.user=sdnctl
index 908d60a..ed35d5b 100644 (file)
@@ -4,6 +4,7 @@
 # ================================================================================
 # 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.
@@ -21,7 +22,7 @@
 
 org.onap.ccsdk.sli.dbtype = dblib
 #Note : the next 4 fields are only used if org.onap.ccsdk.sli.dbtype = jdbc
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.database=sdnctl
 org.onap.ccsdk.sli.jdbc.user=sdnctl
 org.onap.ccsdk.sli.jdbc.password=gamma
index a568dfd..698bbb1 100755 (executable)
@@ -4,6 +4,7 @@
 # ================================================================================
 # 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.
@@ -22,7 +23,7 @@
 MYSQL_USER=${MYSQL_USER:-sdnctl}
 MYSQL_PWD=${MYSQL_PWD:-gamma}
 MYSQL_DB=${MYSQL_DB:-sdnctl}
-MYSQL_HOST=${MYSQL_HOST:-{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+MYSQL_HOST=${MYSQL_HOST:-{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}}
 
 mysql --user=${MYSQL_USER} --password=${MYSQL_PWD} --host=${MYSQL_HOST} ${MYSQL_DB} <<-END
 SELECT module, rpc, version, mode from SVC_LOGIC where active='Y';
index 44ae32f..914a4a1 100644 (file)
@@ -4,6 +4,7 @@
 # ================================================================================
 # 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.
@@ -20,7 +21,7 @@
 ###
 
 org.onap.ccsdk.sli.dbtype = jdbc
-org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.database = sdnctl
 org.onap.ccsdk.sli.jdbc.user = sdnctl
 org.onap.ccsdk.sli.jdbc.password = gamma
index 49d818a..85293c8 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index c582620..8e1160e 100644 (file)
@@ -1,3 +1,4 @@
+# Modifications Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
 ################################################################################
 #
 #    Licensed to the Apache Software Foundation (ASF) under one or more
index 24371d0..89c84b7 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 67b409a..0ce605d 100644 (file)
@@ -1,8 +1,27 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: v1
 kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-sdnc-bin
   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/appc/opt/onap/ccsdk/bin/*").AsConfig . | indent 2 }}
 ---
@@ -11,6 +30,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-sdnc-data-properties
   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/appc/opt/onap/ccsdk/data/properties/*").AsConfig . | indent 2 }}
 ---
@@ -19,6 +43,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-sdnc-svclogic-bin
   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/appc/opt/onap/ccsdk/svclogic/bin/*").AsConfig . | indent 2 }}
 ---
@@ -27,6 +56,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-sdnc-svclogic-config
   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/appc/opt/onap/ccsdk/svclogic/config/*").AsConfig . | indent 2 }}
 ---
@@ -35,6 +69,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-appc-bin
   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/appc/opt/onap/appc/bin/*").AsConfig . | indent 2 }}
 ---
@@ -43,6 +82,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-appc-data-properties
   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/appc/opt/onap/appc/data/properties/*").AsConfig . | indent 2 }}
 ---
@@ -51,6 +95,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-appc-svclogic-bin
   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/appc/opt/onap/appc/svclogic/bin/*").AsConfig . | indent 2 }}
 ---
@@ -59,6 +108,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onap-appc-svclogic-config
   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/appc/opt/onap/appc/svclogic/config/*").AsConfig . | indent 2 }}
 ---
@@ -67,6 +121,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-filebeat
   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/log/filebeat/log4j/*").AsConfig . | indent 2 }}
 ---
@@ -75,5 +134,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-logging-cfg
   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/log/*").AsConfig . | indent 2 }}
index 1021409..25257ea 100644 (file)
 # # See the License for the specific language governing permissions and
 # # limitations under the License.
 */}}
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
-{{ $pvNum := default 1 .Values.replicaCount | int }}
+{{- $global := . }}
+{{- if and $global.Values.persistence.enabled (not $global.Values.persistence.existingClaim) -}}
+{{- range $i, $t := until (int $global.Values.replicaCount)}}
 kind: PersistentVolume
 apiVersion: v1
 metadata:
-  name: {{ include "common.fullname" . }}-data0
-  namespace: {{ include "common.namespace" . }}
+  name: {{ include "common.fullname" $global }}-data{{$i}}
+  namespace: {{ include "common.namespace" $global }}
   labels:
-    app: {{ include "common.fullname" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ .Release.Name }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
+    app: {{ include "common.fullname" $global }}
+    chart: "{{ $global.Chart.Name }}-{{ $global.Chart.Version | replace "+" "_" }}"
+    release: "{{ $global.Release.Name }}"
+    heritage: "{{ $global.Release.Service }}"
+    name: {{ include "common.fullname" $global }}
 spec:
   capacity:
-    storage: {{ .Values.persistence.size}}
+    storage: {{ $global.Values.persistence.size}}
   accessModes:
-    - {{ .Values.persistence.accessMode }}
-  storageClassName: "{{ include "common.fullname" . }}-data"
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+    - {{ $global.Values.persistence.accessMode }}
+  storageClassName: "{{ include "common.fullname" $global }}-data"
+  persistentVolumeReclaimPolicy: {{ $global.Values.persistence.volumeReclaimPolicy }}
   hostPath:
-    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
-{{ if gt $pvNum 1 }}
+    path: {{ $global.Values.global.persistence.mountPath | default $global.Values.persistence.mountPath }}/{{ $global.Release.Name }}/{{ $global.Values.persistence.mountSubPath }}{{$i}}
 ---
-kind: PersistentVolume
-apiVersion: v1
-metadata:
-  name: {{ include "common.fullname" . }}-data1
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.fullname" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ .Release.Name }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
-spec:
-  capacity:
-    storage: {{ .Values.persistence.size}}
-  accessModes:
-    - {{ .Values.persistence.accessMode }}
-  storageClassName: "{{ include "common.fullname" . }}-data"
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
-  hostPath:
-    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
-{{ end }}
-{{ if gt $pvNum 2 }}
----
-kind: PersistentVolume
-apiVersion: v1
-metadata:
-  name: {{ include "common.fullname" . }}-data2
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.fullname" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ .Release.Name }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
-spec:
-  capacity:
-    storage: {{ .Values.persistence.size}}
-  accessModes:
-    - {{ .Values.persistence.accessMode }}
-  storageClassName: "{{ include "common.fullname" . }}-data"
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
-  hostPath:
-    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}2
-{{ end }}
-{{ if gt $pvNum 3 }}
----
-kind: PersistentVolume
-apiVersion: v1
-metadata:
-  name: {{ include "common.fullname" . }}-data3
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.fullname" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ .Release.Name }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
-spec:
-  capacity:
-    storage: {{ .Values.persistence.size}}
-  accessModes:
-    - {{ .Values.persistence.accessMode }}
-  storageClassName: "{{ include "common.fullname" . }}-data"
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
-  hostPath:
-    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}3
-{{ end }}
-{{ if gt $pvNum 4 }}
----
-kind: PersistentVolume
-apiVersion: v1
-metadata:
-  name: {{ include "common.fullname" . }}-data4
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.fullname" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ .Release.Name }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
-spec:
-  capacity:
-    storage: {{ .Values.persistence.size}}
-  accessModes:
-    - {{ .Values.persistence.accessMode }}
-  storageClassName: "{{ include "common.fullname" . }}-data"
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
-  hostPath:
-    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}4
-{{ end }}
+{{- end -}}
 {{- end -}}
index 345c194..57311a0 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: v1
 kind: Secret
 metadata:
@@ -10,4 +24,4 @@ metadata:
     heritage: {{ .Release.Service }}
 type: Opaque
 data:
-  db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
+  db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
index 733c4ca..32938cc 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: v1
 kind: Service
 metadata:
index 791d933..32ff952 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: apps/v1beta1
 kind: StatefulSet
 metadata:
@@ -25,7 +39,7 @@ spec:
         - /root/ready.py
         args:
         - --container-name
-        - {{ .Values.mysql.nameOverride }}
+        - {{.Values.config.mariadbGaleraContName}}
         env:
         - name: NAMESPACE
           valueFrom:
index 1c20977..0325275 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -39,13 +40,21 @@ debugEnabled: false
 config:
   aafExtIP: 127.0.0.1
   aafExtFQDN: aaf-onap-beijing-test.osaaf.org
-  dbRootPassword: openECOMP1.0
+  ansibleServiceName: appc-ansible-server
+  ansiblePort: 8000
+  mariadbRootPassword: secretpassword
+  userName: my-user
+  userPassword: my-password
+  mysqlDatabase: my-database
+  mariadbGaleraSVCName: appc-dbhost
+  mariadbGaleraContName: appc-db
   enableAAF: false
   enableClustering: true
   configDir: /opt/onap/appc/data/properties
   dmaapTopic: SUCCESS
   logstashServiceName: log-ls
   logstashPort: 5044
+  odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
   openStackType: OpenStackProvider
   openStackName: OpenStack
   openStackKeyStoneUrl: http://localhost:8181/apidoc/explorer/index.html
@@ -54,10 +63,18 @@ config:
   openStackUserName: admin
   openStackEncryptedPassword: admin
 
-mysql:
+appc-ansible-server:
+  service:
+    name: appc-ansible-server
+    internalPort: 8000
+  config:
+    mysqlServiceName: appc-dbhost
+
+mariadb-galera:
   nameOverride: appc-db
   service:
     name: appc-dbhost
+    portName: appc-dbhost
   nfsprovisionerPrefix: appc
   sdnctlPrefix: appc
   persistence:
index 11a38c2..01731fd 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e18fb77..97abbbe 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 description: ONAP Clamp Dashboard Elasticsearch
index 2202d75..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # 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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index ab3ec43..15edc45 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 # ======================== Elasticsearch Configuration =========================
 #
 # NOTE: Elasticsearch comes with reasonable defaults for most settings.
index f41a7c2..cc34369 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 kind: ConfigMap
@@ -20,4 +19,4 @@ metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index b740091..e933a36 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: extensions/v1beta1
 kind: Deployment
index 31230a9..fd21cdf 100644 (file)
@@ -1,3 +1,18 @@
+{{/*
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
 {{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
 kind: PersistentVolume
 apiVersion: v1
index c046f46..abab145 100644 (file)
@@ -1,3 +1,18 @@
+{{/*
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
 {{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
 kind: PersistentVolumeClaim
 apiVersion: v1
index 2da4285..d207471 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 kind: Service
index 19e85fd..eb0588f 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 #################################################################
 # Global configuration defaults.
index df79cc3..3cb6f4f 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 description: ONAP Clamp Dashboard Kibana
index 2202d75..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # 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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 65d29db..f529785 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 xpack.graph.enabled: false
 #Set to false to disable X-Pack graph features.
 xpack.ml.enabled: false
index 7339832..607faf8 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 kind: ConfigMap
index 16fad51..b58be0f 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: extensions/v1beta1
 kind: Deployment
index 9d0a511..5c8b6ba 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 kind: Service
index e4987b0..cac222e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 #################################################################
 # Global configuration defaults.
index d7a8418..f8956ed 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 description: ONAP Clamp Dashboard Logstash
index 2202d75..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # 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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 3ddf63f..51470d2 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 http.host: "0.0.0.0"
 ## Path where pipeline configurations reside
 path.config: /usr/share/logstash/pipeline
index aa087e3..5d92de6 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 input {
   http_poller {
         urls => {
index 7339832..607faf8 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 kind: ConfigMap
index 3cfdae3..5ce7145 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: extensions/v1beta1
 kind: Deployment
index 9d0a511..5c8b6ba 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 apiVersion: v1
 kind: Service
index 9047980..9be859c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -11,8 +12,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.
-#
-# Modifications copyright (c) 2018 AT&T Intellectual Property
 
 #################################################################
 # Global configuration defaults.
index 6b4471a..78d07ee 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 91d8ed4..0a4bd8e 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index c6631fb..612590c 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 # Example MySQL config file for medium systems.
 #
 # This is for a system with memory 8G where MySQL plays
@@ -191,4 +204,4 @@ key_buffer_size = 20971520
 ##interactive-timeout
 ##[mysqld_safe]
 ##malloc-lib=//opt/app/mysql/local/lib/libjemalloc.so.1
-##log-error=//opt/app/mysql/log/mysqld.log
\ No newline at end of file
+##log-error=//opt/app/mysql/log/mysqld.log
index 4924922..1c8f3bf 100644 (file)
@@ -6,6 +6,7 @@
 # ================================================================================
 # 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.
index 57947a6..1103aff 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index aa35185..66e1bb7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 07dcc36..06c7cb7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..252ca76 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..1deed4e 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 3bcaae0..2ca864e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 55221b1..581f4a0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4590405..3b09d9a 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9b24f82..c414a01 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -18,4 +19,4 @@ dependencies:
     # 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
+    repository: '@local'
index 44c0e6a..0c1f3bc 100644 (file)
@@ -1,11 +1,24 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 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
+    - /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
index 0a8f8d5..03551fe 100644 (file)
@@ -1,18 +1,40 @@
-<configuration scan="true" scanPeriod="10 seconds" debug="false">
-               <jmxConfigurator />
-               <property resource="application.properties" />
-               <property name="logDirectory" value="/var/log/onap/clamp" />
+<?xml version = "1.0" encoding = "UTF-8" ?>
+<!--
+# 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.
+-->
+<included>
+       <jmxConfigurator />
+       <!-- Example evaluator filter applied against console appender -->
+<property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
+               <property name="p_lvl" value="%level"/>
+               <property name="p_log" value="%logger"/>
+               <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>
+               <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+               <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+               <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>
+               <property name="p_thr" value="%thread"/>
+               <property name="defaultPattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>
+               <property name="debugPattern" value="%nopexception${p_tim}|${p_lvl}|${p_mdc}|${p_exc}|%msg%n"/>
+
                <!-- Example evaluator filter applied against console appender -->
                <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 -->
-                               <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
                                <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                                                <level>INFO</level>
                                </filter>
                                <encoder>
-                                               <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
-                                               </pattern>
+                                       <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n</pattern>
                                </encoder>
                </appender>
 
                                <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                                                <level>INFO</level>
                                </filter>
-                               <file>${logDirectory}/error.log</file>
+                               <file>${logDirectory}/error2.log</file>
                                <append>true</append>
                                <encoder>
-                                               <pattern>%date{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX", UTC}|%X{RequestId}|%.20thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDescription}|%msg%n</pattern>
+                                               <pattern>${defaultPattern}</pattern>
                                </encoder>
-                               <rollingPolicy
-                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-                                               <maxIndex>10</maxIndex>
-                                               <FileNamePattern>${logDirectory}/error.%i.log.zip
-                                               </FileNamePattern>
+                               <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+                                       <fileNamePattern>${outputDirectory}/clamp/error.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
+                                       <maxFileSize>50MB</maxFileSize>
+                                       <maxHistory>30</maxHistory>
+                                       <totalSizeCap>10GB</totalSizeCap>
                                </rollingPolicy>
                                <triggeringPolicy
                                                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                                <file>${logDirectory}/debug.log</file>
                                <append>true</append>
                                <encoder>
-                                               <pattern>%date{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX",UTC}|%X{RequestId}|%.20thread|%.-5level|%logger{36}|%msg%n</pattern>
+                                               <pattern>${debugPattern}</pattern>
                                </encoder>
-                               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                                       <fileNamePattern>${logDirectory}/debug.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
-                                       <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                                               <maxFileSize>10MB</maxFileSize>
-                                       </timeBasedFileNamingAndTriggeringPolicy>
-                                       <maxHistory>5</maxHistory>
+                               <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+                                       <fileNamePattern>${outputDirectory}/clamp/debug.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
+                                       <maxFileSize>50MB</maxFileSize>
+                                       <maxHistory>30</maxHistory>
+                                       <totalSizeCap>10GB</totalSizeCap>
                                </rollingPolicy>
                </appender>
 
-               <appender name="AUDIT"
-                               class="ch.qos.logback.core.rolling.RollingFileAppender">
-                               <file>${logDirectory}/audit.log</file>
-                               <append>true</append>
-                               <encoder>
-                                               <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
-                                               </pattern>
-                               </encoder>
-                               <rollingPolicy
-                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-                                               <maxIndex>10</maxIndex>
-                                               <FileNamePattern>${logDirectory}/audit.%i.log.zip
-                                               </FileNamePattern>
-                               </rollingPolicy>
-                               <triggeringPolicy
-                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-                                               <maxFileSize>10MB</maxFileSize>
-                               </triggeringPolicy>
-               </appender>
-               <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
-                               <queueSize>256</queueSize>
-                               <appender-ref ref="AUDIT" />
-               </appender>
 
-               <appender name="METRIC"
-                               class="ch.qos.logback.core.rolling.RollingFileAppender">
-                               <file>${logDirectory}/metric.log</file>
-                               <append>true</append>
-                               <encoder>
-                                               <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|
-                                                               %msg%n</pattern>
-                               </encoder>
-                               <rollingPolicy
-                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-                                               <maxIndex>10</maxIndex>
-                                               <FileNamePattern>${logDirectory}/metric.%i.log.zip
-                                               </FileNamePattern>
-                               </rollingPolicy>
-                               <triggeringPolicy
-                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-                                               <maxFileSize>10MB</maxFileSize>
-                               </triggeringPolicy>
-               </appender>
-               <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
-                               <queueSize>256</queueSize>
-                               <appender-ref ref="METRIC" />
-               </appender>
+       <appender name="AUDIT"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <file>${logDirectory}/audit.log</file>
+               <append>true</append>
+               <encoder>
+                       <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+                       </pattern>
+               </encoder>
+               <rollingPolicy
+                       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <maxIndex>10</maxIndex>
+                       <FileNamePattern>${logDirectory}/audit.%i.log.zip
+                       </FileNamePattern>
+               </rollingPolicy>
+               <triggeringPolicy
+                       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                       <maxFileSize>10MB</maxFileSize>
+               </triggeringPolicy>
+       </appender>
+       <appender name="asyncEELFAudit"
+               class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>256</queueSize>
+               <appender-ref ref="AUDIT" />
+       </appender>
 
-               <!-- SECURITY related loggers -->
-               <appender name="SECURITY"
-                               class="ch.qos.logback.core.rolling.RollingFileAppender">
-                               <file>${logDirectory}/security.log</file>
-                               <append>true</append>
-                               <encoder>
-                                               <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
-                                               </pattern>
-                               </encoder>
-                               <rollingPolicy
-                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-                                               <maxIndex>10</maxIndex>
-                                               <FileNamePattern>${logDirectory}/security.%i.log.zip
-                                               </FileNamePattern>
-                               </rollingPolicy>
-                               <triggeringPolicy
-                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-                                               <maxFileSize>10MB</maxFileSize>
-                               </triggeringPolicy>
-               </appender>
-               <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
-                               <queueSize>256</queueSize>
-                               <appender-ref ref="SECURITY" />
-               </appender>
-
-               <!-- CLDS related loggers -->
-               <logger name="org.onap.clamp.clds" level="INFO" additivity="true">
-                               <appender-ref ref="ERROR" />
-               </logger>
+       <appender name="METRIC"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <file>${logDirectory}/metric.log</file>
+               <append>true</append>
+               <encoder>
+                       <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|
+                               %msg%n</pattern>
+               </encoder>
+               <rollingPolicy
+                       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <maxIndex>10</maxIndex>
+                       <FileNamePattern>${logDirectory}/metric.%i.log.zip
+                       </FileNamePattern>
+               </rollingPolicy>
+               <triggeringPolicy
+                       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                       <maxFileSize>10MB</maxFileSize>
+               </triggeringPolicy>
+       </appender>
+       <appender name="asyncEELFMetrics"
+               class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>256</queueSize>
+               <appender-ref ref="METRIC" />
+       </appender>
 
-               <!-- CLDS related loggers -->
-               <logger name="com.att.eelf.error" level="OFF" additivity="true">
-                               <appender-ref ref="ERROR" />
-               </logger>
-               <!-- EELF related loggers -->
-               <logger name="com.att.eelf.audit" level="INFO" additivity="false">
-                               <appender-ref ref="asyncEELFAudit" />
-               </logger>
-               <logger name="com.att.eelf.metrics" level="DEBUG" additivity="false">
-                               <appender-ref ref="asyncEELFMetrics" />
-               </logger>
-               <logger name="com.att.eelf.security" level="DEBUG" additivity="false">
-                               <appender-ref ref="asyncEELFSecurity" />
-               </logger>
+       <!-- SECURITY related loggers -->
+       <appender name="SECURITY"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <file>${logDirectory}/security.log</file>
+               <append>true</append>
+               <encoder>
+                       <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+                       </pattern>
+               </encoder>
+               <rollingPolicy
+                       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <maxIndex>10</maxIndex>
+                       <FileNamePattern>${logDirectory}/security.%i.log.zip
+                       </FileNamePattern>
+               </rollingPolicy>
+               <triggeringPolicy
+                       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                       <maxFileSize>10MB</maxFileSize>
+               </triggeringPolicy>
+       </appender>
+       <appender name="asyncEELFSecurity"
+               class="ch.qos.logback.classic.AsyncAppender">
+               <queueSize>256</queueSize>
+               <appender-ref ref="SECURITY" />
+       </appender>
+       <!-- AAF related loggers -->
+       <logger name="org.onap.aaf" level="INFO" additivity="true">
+               <appender-ref ref="DEBUG" />
+       </logger>
+       <logger name="org.apache.catalina.core" level="INFO"
+               additivity="true">
+               <appender-ref ref="DEBUG" />
+       </logger>
+       <!-- CLDS related loggers -->
+       <logger name="org.onap.clamp.clds" level="INFO"
+               additivity="true">
+               <appender-ref ref="ERROR" />
+       </logger>
 
+       <!-- CLDS related loggers -->
+       <logger name="com.att.eelf.error" level="OFF" additivity="true">
+               <appender-ref ref="ERROR" />
+       </logger>
+       <!-- EELF related loggers -->
+       <logger name="com.att.eelf.audit" level="INFO"
+               additivity="false">
+               <appender-ref ref="asyncEELFAudit" />
+       </logger>
+       <logger name="com.att.eelf.metrics" level="DEBUG"
+               additivity="false">
+               <appender-ref ref="asyncEELFMetrics" />
+       </logger>
+       <logger name="com.att.eelf.security" level="DEBUG"
+               additivity="false">
+               <appender-ref ref="asyncEELFSecurity" />
+       </logger>
 
-               <!-- Spring related loggers -->
-               <logger name="org.springframework" level="WARN" />
-               <logger name="org.springframework.beans" level="WARN" />
-               <logger name="org.springframework.web" level="WARN" />
-               <logger name="com.blog.spring.jms" level="WARN" />
+       <!-- Spring related loggers -->
+       <logger name="org.springframework" level="DEBUG" />
 
-               <!-- Other Loggers that may help troubleshoot -->
-               <logger name="net.sf" level="WARN" />
-               <logger name="org.apache.commons.httpclient" level="WARN" />
-               <logger name="org.apache.commons" level="WARN" />
-               <logger name="org.apache.coyote" level="WARN" />
-               <logger name="org.apache.jasper" level="WARN" />
+       <!-- Other Loggers that may help troubleshoot -->
+       <logger name="org.apache" level="DEBUG" />
 
-               <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
-                               May aid in troubleshooting) -->
-               <logger name="org.apache.camel" level="WARN" />
-               <logger name="org.apache.cxf" level="WARN" />
-               <logger name="org.apache.camel.processor.interceptor" level="WARN" />
-               <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
-               <logger name="org.apache.cxf.service" level="WARN" />
-               <logger name="org.restlet" level="DEBUG" />
-               <logger name="org.apache.camel.component.restlet" level="DEBUG" />
+       <!-- logback internals logging -->
+       <logger name="ch.qos.logback.classic" level="INFO" />
+       <logger name="ch.qos.logback.core" level="INFO" />
 
-               <!-- logback internals logging -->
-               <logger name="ch.qos.logback.classic" level="INFO" />
-               <logger name="ch.qos.logback.core" level="INFO" />
-
-               <!-- logback jms appenders & loggers definition starts here -->
-               <!-- logback jms appenders & loggers definition starts here -->
-               <appender name="auditLogs"
-                               class="ch.qos.logback.core.rolling.RollingFileAppender">
-                               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-                               </filter>
-                               <file>${logDirectory}/Audit.log</file>
-                               <rollingPolicy
-                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-                                               <fileNamePattern>${logDirectory}/Audit.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
-                               </encoder>
-               </appender>
-               <appender name="perfLogs"
-                               class="ch.qos.logback.core.rolling.RollingFileAppender">
-                               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-                               </filter>
-                               <file>${logDirectory}/Perform.log</file>
-                               <rollingPolicy
-                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-                                               <fileNamePattern>${logDirectory}/Perform.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
-                               </encoder>
-               </appender>
-               <logger name="AuditRecord" level="INFO" additivity="FALSE">
-                               <appender-ref ref="auditLogs" />
-               </logger>
-               <logger name="AuditRecord_DirectCall" level="INFO" additivity="FALSE">
-                               <appender-ref ref="auditLogs" />
-               </logger>
-               <logger name="PerfTrackerRecord" level="INFO" additivity="FALSE">
-                               <appender-ref ref="perfLogs" />
-               </logger>
-               <!-- logback jms appenders & loggers definition ends here -->
+       <!-- logback jms appenders & loggers definition starts here -->
+       <appender name="auditLogs"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+               </filter>
+               <file>${logDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.log</file>
+               <rollingPolicy
+                       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <fileNamePattern>${logDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+       <appender name="perfLogs"
+               class="ch.qos.logback.core.rolling.RollingFileAppender">
+               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+               </filter>
+               <file>${logDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.log</file>
+               <rollingPolicy
+                       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                       <fileNamePattern>${logDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+               </encoder>
+       </appender>
+       <logger name="AuditRecord" level="INFO" additivity="FALSE">
+               <appender-ref ref="auditLogs" />
+       </logger>
+       <logger name="AuditRecord_DirectCall" level="INFO"
+               additivity="FALSE">
+               <appender-ref ref="auditLogs" />
+       </logger>
+       <logger name="PerfTrackerRecord" level="INFO" additivity="FALSE">
+               <appender-ref ref="perfLogs" />
+       </logger>
+       <!-- logback jms appenders & loggers definition ends here -->
 
-               <root level="WARN">
-                               <appender-ref ref="DEBUG" />
-                               <appender-ref ref="STDOUT" />
-               </root>
+       <root level="DEBUG">
+               <appender-ref ref="DEBUG" />
+               <appender-ref ref="STDOUT" />
+       </root>
+</included>
 
-</configuration>
index 57947a6..1103aff 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index e0ed211..636b1ae 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index bc0eac7..4dc12c3 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ce29de9..8527ebb 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -29,10 +30,16 @@ 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.portName }}2
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
       name: {{ .Values.service.portName }}
+    - port: {{ .Values.service.externalPort2 }}
+      targetPort: {{ .Values.service.internalPort2 }}
+      name: {{ .Values.service.portName }}2
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
index 2a321e7..9c6fa51 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -27,7 +28,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp:2.0.2
+image: onap/clamp:3.0-STAGING-latest
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -56,7 +57,10 @@ config:
         "clamp.config.policy.pdpUrl1": "http://pdp.{{ include "common.namespace" . }}:8081/pdp/ , testpdp, alpha123",
         "clamp.config.policy.pdpUrl2": "http://pdp.{{ include "common.namespace" . }}:8081/pdp/ , testpdp, alpha123",
         "clamp.config.policy.papUrl": "http://pap.{{ include "common.namespace" . }}:9091/pap/ , testpap, alpha123",
-        "clamp.config.policy.clientKey": "dGVzdA=="
+        "clamp.config.policy.clientKey": "dGVzdA==",
+        "clamp.config.cadi.aafLocateUrl": "https://aaf-onap-test.osaaf.org:8095",
+        "com.att.eelf.logging.path": "/opt/clamp",
+        "com.att.eelf.logging.file": "logback.xml"
     }
 
 # subchart configuration
@@ -90,6 +94,12 @@ service:
   portName: clamp
   internalPort: 8080
   nodePort: 95
+  portName2: clamp-ssl
+  internalPort2: 8443
+  # as of 20180904 port 58 is reserved for clamp from log/logdemonode
+  # see https://wiki.onap.org/display/DW/OOM+NodePort+List
+  nodePort2: 58
 
 ingress:
   enabled: false
index e1955a1..daba2b9 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 apiVersion: v1
 description: D.G. Builder application
 name: dgbuilder
index acca8ef..e4f42cc 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 dependencies:
   - name: common
     version: ~2.0.0
index 82eeec5..b780caf 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 org.onap.ccsdk.sli.dbtype=jdbc
 org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.dbServiceName}}.{{ include "common.namespace" . }}:3306/sdnctl
 org.onap.ccsdk.sli.jdbc.database=sdnctl
index 961792b..aaf7a26 100755 (executable)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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
 export PATH=$PATH:.
 appDir=$(pwd)
index 2465e03..a70ad10 100644 (file)
@@ -1,3 +1,9 @@
+# Copyright © 2018 AT&T, Amdocs, Bell Canada
+#
+# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+#
+# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 7ef92d0..0aa7a3f 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 apiVersion: v1
 kind: ConfigMap
 metadata:
index 328e058..a191761 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 7604be8..2781cca 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 apiVersion: v1
 kind: Secret
 metadata:
index ffcc711..1e2f0a5 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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.
+
 apiVersion: v1
 kind: Service
 metadata:
index 759b940..b336548 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 AT&T, 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 default values that can be inherited by
 # all subcharts.
 #################################################################
index 85f36dc..47f9e7e 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 apiVersion: v1
 description: Chart for MariaDB Galera cluster
 name: mariadb-galera
index c169924..4e8080a 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 dependencies:
   - name: common
     version: ~2.0.0
index 3dd25ac..96f2fd8 100644 (file)
@@ -1,3 +1,9 @@
+# Copyright © 2018 Amdocs, Bell Canada
+#
+# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+#
+# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
 MariaDB-Galera service can be accessed via port 3306 on the following DNS name from within your cluster:
 {{ include "common.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local
 
index 094a76c..54096cf 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 apiVersion: v1
 kind: ConfigMap
 metadata:
index 184728f..a2096fd 100644 (file)
 # See the License for the specific language governing permissions and
 # limitations under the License.
 */}}
-
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{- $global := . }}
+{{- if and $global.Values.persistence.enabled (not $global.Values.persistence.existingClaim) -}}
+{{- range $i, $t := until (int $global.Values.replicaCount)}}
 kind: PersistentVolume
 apiVersion: v1
 metadata:
-  name: {{ include "common.fullname" }}
-  namespace: {{ include "common.namespace" . }}
+  name: {{ include "common.fullname" $global }}-data{{$i}}
+  namespace: {{ include "common.namespace" $global }}
   labels:
-    app: {{ include "common.name" . }}
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
-    release: "{{ .Release.Name }}"
-    heritage: "{{ .Release.Service }}"
-    name: {{ include "common.fullname" . }}
+    app: {{ include "common.fullname" $global }}
+    chart: "{{ $global.Chart.Name }}-{{ $global.Chart.Version | replace "+" "_" }}"
+    release: "{{ $global.Release.Name }}"
+    heritage: "{{ $global.Release.Service }}"
+    name: {{ include "common.fullname" $global }}
 spec:
   capacity:
-    storage: {{ .Values.persistence.size}}
+    storage: {{ $global.Values.persistence.size}}
   accessModes:
-    - {{ .Values.persistence.accessMode }}
-  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+    - {{ $global.Values.persistence.accessMode }}
+  persistentVolumeReclaimPolicy: {{ $global.Values.persistence.volumeReclaimPolicy }}
+  storageClassName: "{{ include "common.fullname" $global }}-data"
   hostPath:
-    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+    path: {{ $global.Values.global.persistence.mountPath | default $global.Values.persistence.mountPath }}/{{ $global.Release.Name }}/{{ $global.Values.persistence.mountSubPath }}{{$i}}
+---
+{{- end -}}
 {{- end -}}
index 101a7eb..233158f 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 apiVersion: v1
 kind: Secret
 metadata:
index d17d350..ae11a26 100644 (file)
@@ -1,9 +1,24 @@
+# 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.
+
 apiVersion: v1
 kind: Service
 metadata:
   annotations:
     service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
-  name: {{ include "common.servicename" . }}
+#  name: {{ include "common.servicename" . }}
+  name: {{ .Values.service.name }}
   namespace: {{ include "common.namespace" . }}
   labels:
     app: {{ include "common.fullname" . }}
index ed7e1fc..8b2aafb 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 apiVersion: apps/v1beta1
 kind: StatefulSet
 metadata:
@@ -9,7 +23,7 @@ metadata:
     release: "{{ .Release.Name }}"
     heritage: "{{ .Release.Service }}"
 spec:
-  serviceName: {{ include "common.fullname" . }}
+  serviceName: {{ .Values.service.name }}
   replicas: {{ .Values.replicaCount }}
   template:
     metadata:
@@ -34,7 +48,7 @@ spec:
       imagePullSecrets:
       - name: {{ include "common.namespace" . }}-docker-registry-key
       containers:
-        - name: {{ include "common.fullname" . }}
+        - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy | quote}}
           env:
@@ -59,13 +73,13 @@ spec:
                   key: db-root-password
           ports:
           - containerPort: {{ .Values.service.internalPort }}
-            name: {{ .Values.service.name }}
+            name: {{ .Values.service.portName }}
           - containerPort: {{ .Values.service.sstPort }}
-            name: {{ .Values.service.sstName }}
+            name: {{ .Values.service.sstPortName }}
           - containerPort: {{ .Values.service.replicationPort }}
             name: {{ .Values.service.replicationName }}
           - containerPort: {{ .Values.service.istPort }}
-            name: {{ .Values.service.istName }}
+            name: {{ .Values.service.istPortName }}
           readinessProbe:
             exec:
               command:
@@ -93,7 +107,6 @@ spec:
 {{- if .Values.persistence.enabled }}
           - mountPath: /var/lib/mysql
             name: {{ include "common.fullname" . }}-data
-            subPath: data
       initContainers:
         - name: mariadb-galera-prepare
           image: "{{ include "common.repository" . }}/{{ .Values.imageInit }}"
@@ -104,15 +117,12 @@ spec:
   volumeClaimTemplates:
   - metadata:
       name: {{ include "common.fullname" . }}-data
-      annotations:
-  {{- if .Values.persistence.storageClass }}
-        volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass | quote }}
-  {{- else }}
-        volume.alpha.kubernetes.io/storage-class: default
-  {{- end }}
+      labels:
+        name: {{ include "common.fullname" . }}
     spec:
       accessModes:
       - {{ .Values.persistence.accessMode | quote }}
+      storageClassName: {{ include "common.fullname" . }}-data
       resources:
         requests:
           storage: {{ .Values.persistence.size | quote }}
index 6e5fb5a..51f446f 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 #################################################################
 # Global configuration defaults.
 #################################################################
@@ -46,7 +60,7 @@ readiness:
 
 ## Persist data to a persitent volume
 persistence:
-  enabled: false
+  enabled:  true
 
   ## A manually managed Persistent Volume and Claim
   ## Requires persistence.enabled: true
@@ -62,20 +76,22 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteOnce
+  accessMode: ReadWriteMany
   size: 2Gi
-
+  mountPath: /dockerdata-nfs
+  mountSubPath: "mariadb-galera/data"
+  mysqlPath: /var/lib/mysql
 
 service:
   internalPort: 3306
   name: mariadb-galera
   portName: mariadb-galera
   sstPort: 4444
-  sstName: sst
+  sstPortName: sst
   replicationPort: 4567
   replicationName: replication
   istPort: 4568
-  istName: ist
+  istPortName: ist
 
 ingress:
   enabled: false
index 8cb1f1b..ad3c548 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 13be087..55ed6c1 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f639633..c414a01 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 0b16cf6..683c637 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index bce3163..82ad95c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 671cf07..2eb3c25 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f639633..c414a01 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
diff --git a/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json
deleted file mode 100644 (file)
index 4260035..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "service": {
-    "name": "A&AI HBase Health Check",
-    "checks": [
-      {
-        "id": "hbase-aai",
-        "name": "HBase Health Check",
-        "http": "http://aai-hbase:8080/status/cluster",
-        "method": "GET",
-        "header": {
-          "Cache-Control": ["no-cache"],
-          "Content-Type": ["application/json"],
-          "Accept": ["application/json"]
-        },
-        "tls_skip_verify": true,
-        "interval": "15s",
-        "timeout": "1s"
-      }
-    ]
-  }
-}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-tabular-backend-health.json
deleted file mode 100644 (file)
index c7fc19b..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "service": {
-    "name": "A&AI Tabular Data Store",
-    "checks": [
-      {
-        "id": "tabular-backend",
-        "name": "Tabular Data Store Operational Test",
-        "script": "/consul/scripts/tabular-db-availability.sh",
-        "interval": "15s",
-        "timeout": "1s"
-      }
-    ]
-  }
-}
index b2db044..4c7fe41 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
 # Model Loader Distribution Client Configuration\r
 ml.distribution.ACTIVE_SERVER_TLS_AUTH=false\r
 ml.distribution.ASDC_ADDRESS=c2.vm1.sdc.simpledemo.openecomp.org:8443\r
index 22d135b..62a6f31 100644 (file)
@@ -12,7 +12,7 @@
   {
     "id": "policy-nexus-local-status",
     "name": "Policy Nexus Local Status",
-    "http": "http://nexus:8081/nexus/service/local/status?pretty",
+    "http": "http://nexus:8081/nexus/service/local/status",
     "method": "GET",
     "header": {
       "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
@@ -27,7 +27,7 @@
   {
     "id": "policy-nexus-internal-metrics",
     "name": "Policy Nexus Internal Metrics",
-    "http": "http://nexus:8081/nexus/internal/metrics?pretty",
+    "http": "http://nexus:8081/nexus/internal/metrics",
     "method": "GET",
     "header": {
       "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
@@ -42,7 +42,7 @@
   {
     "id": "policy-nexus-internal-healthcheck",
     "name": "Policy Nexus Internal Healthcheck",
-    "http": "http://nexus:8081/nexus/internal/healthcheck?pretty",
+    "http": "http://nexus:8081/nexus/internal/healthcheck",
     "method": "GET",
     "header": {
       "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
@@ -64,7 +64,7 @@
   {
     "id": "drools",
     "name": "Drools Health Check",
-    "http": "http://drools:6969/healthcheck?pretty",
+    "http": "https://drools:6969/healthcheck",
     "method": "GET",
     "header": {
       "Authorization": ["Basic aGVhbHRoY2hlY2s6emIhWHp0RzM0"],
@@ -79,7 +79,7 @@
   {
     "id": "pap",
     "name": "PAP Health Check",
-    "http": "http://pap:9091/pap/test?pretty",
+    "http": "https://pap:9091/pap/test",
     "method": "GET",
     "header": {
       "Authorization": ["Basic dGVzdHBhcDphbHBoYTEyMw=="],
@@ -94,7 +94,7 @@
   {
     "id": "pdp",
     "name": "PDP Health Check",
-    "http": "http://pdp:8081/pdp/test?pretty",
+    "http": "https://pdp:8081/pdp/test",
     "method": "GET",
     "header": {
       "Authorization": ["Basic dGVzdHBkcDphbHBoYTEyMw=="],
index 9ee0945..8d57163 100755 (executable)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 if curl -s -X PUT http://aai-elasticsearch:9200/searchhealth/stats/testwrite -d @/consul/scripts/aai-search-storage-write-doc.txt | grep '\"created\":true'; then
    if curl -s -X DELETE http://aai-elasticsearch:9200/searchhealth/stats/testwrite | grep '\"failed\":0'; then
       if curl -s -X GET http://aai-elasticsearch:9200/searchhealth/stats/testwrite | grep '\"found\":false'; then
index 112809c..b756936 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 APPC_DBHOST_POD=$(/consul/bin/kubectl -n {{ include "common.namespace" . }}  get pod | grep -o "appc-dbhost-[^[:space:]]*")
 if [ -n "$APPC_DBHOST_POD" ]; then
    if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $APPC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
index 2cf7fc7..6f85c8a 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-clampdb[^[:space:]]*")
 
    if [ -n "$NAME" ]; then
index c85efc3..8fb35f4 100755 (executable)
@@ -1,3 +1,16 @@
+# 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.
 
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-data-router[^[:space:]]*")
 
index a8babec..80fca0d 100755 (executable)
@@ -1,3 +1,16 @@
+# 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.
 
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-model-loader[^[:space:]]*")
 
index 4be0a24..7cf5283 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 kafkapod=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-message-router-kafka-[^[:space:]]*")
 if [ -n "$kafkapod" ]; then
    if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $kafkapod -- ps ef | grep -i kafka; then
index f8f40b9..8809d92 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 zkpod=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-message-router-zookeeper-[^[:space:]]*")
 if [ -n "$zkpod" ]; then
    if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $zkpod -- ps aux | grep -i zookeeper; then
index 29dbe3f..fd4cbc9 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-policydb[^[:space:]]*")
 
    if [ -n "$NAME" ]; then
index f007e62..33cd496 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index a9ba31a..a3886f2 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index 4e3664b..2ee6fcf 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index 85fc431..f782ba1 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index 3b18654..d328d04 100644 (file)
@@ -1,6 +1,7 @@
 #!/bin/sh
 
 # Copyright © 2018 Amdocs
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 7406481..79f22bf 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 SDNC_DBHOST_POD=$(/consul/bin/kubectl -n {{ include "common.namespace" . }}  get pod | grep -o "sdnc-dbhost-[^[:space:]]*")
 if [ -n "$SDNC_DBHOST_POD" ]; then
    if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $SDNC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
index 12bf9bf..4416fb9 100644 (file)
@@ -1,5 +1,19 @@
 #!/bin/sh
 
+# 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.
+
 SEARCH_SERVICE_NAME="search-data-service.{{ include "common.namespace" . }}"
 SEARCH_SERVICE_PORT=9509
 HEALTH_CHECK_INDEX="healthcheck"
index 047d2cb..09d2c81 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://so:8080/ecomp/mso/infra/healthcheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index 9ad3ffc..e1d0ff5 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://so:8080/mso/healthcheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index 96d9c7a..71a662e 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 ## Query the health check API.
 HEALTH_CHECK_ENDPOINT="http://so:8080/networks/rest/healthcheck"
 HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
index e8135cb..a167f4c 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-so-db[^[:space:]]*")
 
    if [ -n "$NAME" ]; then
index 15175aa..d663b90 100755 (executable)
@@ -1,3 +1,16 @@
+# 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.
 
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-sparky-be[^[:space:]]*")
 
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh
deleted file mode 100755 (executable)
index f2c7c58..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-
-# Query the Hbase service for the cluster status.
-GET_CLUSTER_STATUS_RESPONSE=$(curl -si -X GET -H "Accept: text/xml" http://aai-hbase:8080/status/cluster)
-
-if [ -z "$GET_CLUSTER_STATUS_RESPONSE" ]; then
-  echo "Tabular store is unreachable."
-  return 2
-fi
-
-# Check the resulting status JSON to see if there is a 'DeadNodes' stanza with
-# entries.
-DEAD_NODES=$(echo $GET_CLUSTER_STATUS_RESPONSE | grep "<DeadNodes/>")
-
-if [ -n "$DEAD_NODES" ]; then
-  echo "Tabular store is up and accessible."
-  return 0
-else
-  echo "Tabular store is up but is reporting dead nodes - cluster may be in degraded state."
-  return 1
-fi
index 5ac5c8b..7e81420 100755 (executable)
@@ -1,3 +1,17 @@
+# 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.
+
 NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-vid-mariadb[^[:space:]]*")
 
    if [ -n "$NAME" ]; then
index a4270d3..622d5c6 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2df4d2a..f04d772 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2535437..eb0d02c 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 apiVersion: v1
 kind: Secret
 metadata:
index 37e74f3..93fd650 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ccde9a0..c23e29a 100755 (executable)
@@ -1,66 +1,18 @@
-# text_field:
-#   type: text
-#   label: Custom Text
-#   description: Enter text in a text field.
-#   required: false
-#   filterable: true
-#   weight: 0
-#   on_objects:
-#   - dcim.models.Device
-#   - dcim.models.Rack
-#   - ipam.models.IPAddress
-#   - ipam.models.Prefix
-#   - tenancy.models.Tenant
-#   - virtualization.models.VirtualMachine
-# integer_field:
-#   type: integer
-#   label: Custom Number
-#   description: Enter numbers into an integer field.
-#   required: true
-#   filterable: true
-#   weight: 10
-#   on_objects:
-#   - tenancy.models.Tenant
-# selection_field:
-#   type: selection
-#   label: Choose between items
-#   required: false
-#   filterable: true
-#   weight: 30
-#   on_objects:
-#   - dcim.models.Device
-#   choices:
-#   - value: First Item
-#     weight: 10
-#   - value: Second Item
-#     weight: 20
-#   - value: Third Item
-#     weight: 30
-#   - value: Fifth Item
-#     weight: 50
-#   - value: Fourth Item
-#     weight: 40
-# boolean_field:
-#   type: boolean
-#   label: Yes Or No?
-#   required: true
-#   filterable: true
-#   default: "false" # important: but "false" in quotes!
-#   weight: 90
-#   on_objects:
-#   - dcim.models.Device
-# url_field:
-#   type: url
-#   label: Hyperlink
-#   description: Link to something nice.
-#   required: true
-#   filterable: false
-#   on_objects:
-#   - tenancy.models.Tenant
-# date_field:
-#   type: date
-#   label: Important Date
-#   required: false
-#   filterable: false
-#   on_objects:
-#   - dcim.models.Device
+external-key: 
+  description: "The external-key uniquely identify the resources to a service within ONAP."
+  filterable: true
+  label: ONAP external key
+  on_objects: 
+    - ipam.models.IPAddress
+  required: true
+  type: text
+  weight: 0
+resource-name:
+  description: "The resource-name of the element using this IP."
+  filterable: true
+  label: ONAP resource name
+  on_objects:
+    - ipam.models.IPAddress
+  required: true
+  type: text
+  weight: 0
\ No newline at end of file
index 984c328..77d330b 100755 (executable)
@@ -3,7 +3,7 @@ onap:
     last_name: McQueen
     email: steve.mcqueen@onap.org
     password: onap123$
-    api_token: onceuponatimeiplayedwithnetbox20180814
+    api_token: onceuponatimeiplayedwithnetbox20180814 # This API KEY is used by SDNC, if you edit it, make sure to change it in the netbox.properties file
     is_staff: true # whether user is admin or not, default = false
     is_active: true # whether user is active, default = true
     is_superuser: true # Whether user has all edit rights or not, default = false
\ No newline at end of file
index 25717ce..adf10a1 100755 (executable)
@@ -70,10 +70,10 @@ curl --silent -X POST \
   -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
   -H 'Content-Type: application/json' \
   -d '{
-  "prefix": "192.168.20.0/24",
+  "prefix": "{{ .Values.service.vfw_protected_pool }}",
   "site": 1,
   "tenant": 1,
-  "is_pool": true,
+  "is_pool": false,
   "description": "IP Pool for protected network - vFW use case"
 }'
 
@@ -83,10 +83,10 @@ curl --silent -X POST \
   -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
   -H 'Content-Type: application/json' \
   -d '{
-  "prefix": "192.168.10.0/24",
+  "prefix": "{{ .Values.service.vfw_unprotected_pool }}",
   "site": 1,
   "tenant": 1,
-  "is_pool": true,
+  "is_pool": false,
   "description": "IP Pool for unprotected network - vFW use case"
 }'
 
@@ -96,9 +96,10 @@ curl --silent -X POST \
   -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
   -H 'Content-Type: application/json' \
   -d '{
-  "prefix": "10.0.0.0/8",
+  "prefix": "{{ .Values.service.vfw_mgmt_pool }}",
   "site": 1,
   "tenant": 1,
-  "is_pool": true,
+  "is_pool": false,
   "description": "IP Pool for ONAP - general purpose"
 }'
+
index eacd495..f741cba 100755 (executable)
@@ -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 }}/app
 {{- end -}}
+{{- end -}}
index b911d23..3489049 100755 (executable)
@@ -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: {{ .Release.Name }}-{{ .Values.persistence.staticPvName }}
+{{- end }}
   accessModes:
     - {{ .Values.persistence.accessMode }}
   resources:
index 9d5060d..a60bbb4 100755 (executable)
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 global: # global defaults
-  nodePortPrefix: 302
+  nodePortPrefixExt: 304
   persistence: {}
 
 config:
@@ -64,6 +64,12 @@ service:
   internalPort: 8001
   portName: netbox-app
 
+  # The following subnet pool will be
+  # configured in Netbox by provisioning script.
+  vfw_protected_pool: 192.168.20.0/24
+  vfw_unprotected_pool: 192.168.10.0/24
+  vfw_mgmt_pool: 10.0.101.0/24
+
 ingress:
   enabled: false
 
@@ -77,29 +83,24 @@ affinity: {}
 ## 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: 100Mi
-  mountPath: /dockerdata-nfs
-  mountSubPath: netbox/shared
 
-  # Names used for shared pv/pvcs across App & Nginx containers
+  # 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"
+
   staticPvName: netbox-static
 
+  # When using storage class, mountPath and mountSubPath are
+  # simply ignored.
+
+  mountPath: /dockerdata-nfs
+  mountSubPath: netbox/app
+
 # probe configuration parameters
 liveness:
   initialDelaySeconds: 10
@@ -111,4 +112,4 @@ readiness:
   initialDelaySeconds: 10
   periodSeconds: 10
 
-resources: {}
\ No newline at end of file
+resources: {}
index 90fca37..3490306 100755 (executable)
@@ -29,7 +29,7 @@ spec:
   ports:
     {{if eq .Values.service.type "NodePort" -}}
     - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.nodePort }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
index 31f2abf..14fedc8 100755 (executable)
@@ -17,7 +17,7 @@
 # Declare variables to be passed into your templates.
 
 global: # global defaults
-  nodePortPrefix: 302
+  nodePortPrefixExt: 304
   persistence: {}
   pullPolicy: Always
 
@@ -79,6 +79,6 @@ service:
   name: netbox-nginx
   portName: netbox-nginx
   internalPort: 8080
-  nodePort: 69
+  nodePort: 20
 
-resources: {}
\ No newline at end of file
+resources: {}
index 882aed7..a19f500 100755 (executable)
@@ -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
index a3813f1..30bba6d 100755 (executable)
@@ -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:
index 06127e3..e662567 100755 (executable)
@@ -17,7 +17,7 @@
 # Declare variables to be passed into your templates.
 
 global: # global defaults
-  nodePortPrefix: 302
+  nodePortPrefixExt: 304
   persistence: {}
 
 # application image
@@ -56,25 +56,23 @@ readiness:
 ## 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: "-"
+  # 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: netbox/postgres/data
+
 service:
   type: ClusterIP
   name: netbox-postgres
index 6665064..2dfb36b 100755 (executable)
@@ -16,7 +16,7 @@
 # Global configuration defaults.
 #################################################################
 global:
-  nodePortPrefix: 302
+  nodePortPrefixExt: 304
   commonConfigPrefix: netbox
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
index a498dc7..07231fe 100644 (file)
@@ -24,3 +24,5 @@ ves_other_publish_url: "http://{{ .Values.config.address.message_router }}:3904/
 ves_heartbeat_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT/"
 ves_fault_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.SEC_FAULT_OUTPUT/"
 ves_measurement_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT/"
+ves_pnfRegistration_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.VES_PNFREG_OUTPUT/"
+ves_notification_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/"
@@ -1,99 +1,97 @@
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2017-2018 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=========================================================
-
-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:
-  completions: 1
-{{/*  backoffLimit: 0*/}}
-  template:
-    metadata:
-      labels:
-        app: {{ include "common.name" . }}
-        release: {{ .Release.Name }}
-    spec:
-      restartPolicy: Never
-      initContainers:
-      - name: {{ include "common.name" . }}-readiness
-        image: {{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}
-        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-        command:
-          - /root/ready.py
-        args:
-          - --container-name
-          - dcae-cloudify-manager
-          - --container-name
-          - consul-server
-          - --container-name
-          - msb-discovery
-          - --container-name
-          - kube2msb
-          - "-t"
-          - "15"
-        env:
-        - name: NAMESPACE
-          valueFrom:
-            fieldRef:
-              apiVersion: v1
-              fieldPath: metadata.namespace
-      containers:
-        - name: {{ include "common.name" . }}
-          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
-          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          volumeMounts:
-            - mountPath: /inputs
-              name: {{ include "common.fullname" . }}-dcae-inputs
-            - mountPath: /dcae-configs
-              name: {{ include "common.fullname" . }}-dcae-config
-            - mountPath: /etc/localtime
-              name: localtime
-              readOnly: true
-          env:
-            - name: CMADDR
-              value: {{ .Values.config.address.cm }}
-            - name: CMPASS
-              valueFrom:
-                secretKeyRef:
-                  name: {{ include "common.name" . }}-cmpass
-                  key: password
-            - name: CONSUL
-              value: {{ .Values.config.address.consul.host }}:{{ .Values.config.address.consul.port }}
-            - name: DCAE_NAMESPACE
-              value: {{ .Values.dcae_ns | default "" }}
-            - name: ONAP_NAMESPACE
-              value: {{ include "common.namespace" . }}
-      volumes:
-        - name: {{ include "common.fullname" . }}-dcae-inputs
-          configMap:
-            name: {{ include "common.fullname" . }}-dcae-inputs
-        - name: {{ include "common.fullname" . }}-dcae-config
-          configMap:
-            name: {{ include "common.fullname" . }}-dcae-config
-        - name: localtime
-          hostPath:
-            path: /etc/localtime
-      imagePullSecrets:
-        - name: "{{ include "common.namespace" . }}-docker-registry-key"
+#============LICENSE_START========================================================\r
+# ================================================================================\r
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+# Modifications Copyright © 2018 Amdocs, Bell Canada\r
+# ================================================================================\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+# ============LICENSE_END=========================================================\r
+\r
+apiVersion: extensions/v1beta1\r
+kind: Deployment\r
+metadata:\r
+  name: {{ include "common.fullname" . }}\r
+  namespace: {{ include "common.namespace" . }}\r
+  labels:\r
+    app: {{ include "common.name" . }}\r
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}\r
+    release: {{ .Release.Name }}\r
+    heritage: {{ .Release.Service }}\r
+spec:\r
+  replicas: 1\r
+  template:\r
+    metadata:\r
+      labels:\r
+        app: {{ include "common.name" . }}\r
+        release: {{ .Release.Name }}\r
+    spec:\r
+      initContainers:\r
+      - name: {{ include "common.name" . }}-readiness\r
+        image: {{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}\r
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}\r
+        command:\r
+          - /root/ready.py\r
+        args:\r
+          - --container-name\r
+          - dcae-cloudify-manager\r
+          - --container-name\r
+          - consul-server\r
+          - --container-name\r
+          - msb-discovery\r
+          - --container-name\r
+          - kube2msb\r
+          - "-t"\r
+          - "15"\r
+        env:\r
+        - name: NAMESPACE\r
+          valueFrom:\r
+            fieldRef:\r
+              apiVersion: v1\r
+              fieldPath: metadata.namespace\r
+      containers:\r
+        - name: {{ include "common.name" . }}\r
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"\r
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}\r
+          volumeMounts:\r
+            - mountPath: /inputs\r
+              name: {{ include "common.fullname" . }}-dcae-inputs\r
+            - mountPath: /dcae-configs\r
+              name: {{ include "common.fullname" . }}-dcae-config\r
+            - mountPath: /etc/localtime\r
+              name: localtime\r
+              readOnly: true\r
+          env:\r
+            - name: CMADDR\r
+              value: {{ .Values.config.address.cm }}\r
+            - name: CMPASS\r
+              valueFrom:\r
+                secretKeyRef:\r
+                  name: {{ include "common.name" . }}-cmpass\r
+                  key: password\r
+            - name: CONSUL\r
+              value: {{ .Values.config.address.consul.host }}:{{ .Values.config.address.consul.port }}\r
+            - name: DCAE_NAMESPACE\r
+              value: {{ .Values.dcae_ns | default "" }}\r
+            - name: ONAP_NAMESPACE\r
+              value: {{ include "common.namespace" . }}\r
+      volumes:\r
+        - name: {{ include "common.fullname" . }}-dcae-inputs\r
+          configMap:\r
+            name: {{ include "common.fullname" . }}-dcae-inputs\r
+        - name: {{ include "common.fullname" . }}-dcae-config\r
+          configMap:\r
+            name: {{ include "common.fullname" . }}-dcae-config\r
+        - name: localtime\r
+          hostPath:\r
+            path: /etc/localtime\r
+      imagePullSecrets:\r
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
index 91291cf..bc430b4 100644 (file)
@@ -62,21 +62,20 @@ postgres:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.1.11
+image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.4.1
 
 # DCAE component images to be deployed via Cloudify Manager
 # Use to override default setting in blueprints
 componentImages:
-  #TODO for further investigation: input template expansion issues if we comment this out
   config_binding_service: onap/org.onap.dcaegen2.platform.configbinding:2.1.5
   deployment_handler: onap/org.onap.dcaegen2.platform.deployment-handler:2.1.5
   holmes_engine: onap/holmes/engine-management:1.1.0
   holmes_rules: onap/holmes/rule-management:1.1.0
   inventory: onap/org.onap.dcaegen2.platform.inventory-api:3.0.1
   policy_handler: onap/org.onap.dcaegen2.platform.policy-handler:2.4.5
-  service_change_handler: onap/org.onap.dcaegen2.platform.servicechange-handler:1.1.4
+  service_change_handler: onap/org.onap.dcaegen2.platform.servicechange-handler:1.1.5
   tca: onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0
-  ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:1.2.0
+  ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:1.3.1
 
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
index 7c078fa..08b6f54 100644 (file)
@@ -43,7 +43,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.cm-container:1.3.0
+image: onap/org.onap.dcaegen2.deployments.cm-container:1.4.0
 pullPolicy: Always
 
 # probe configuration parameters
index 2cae72e..b39b91f 100644 (file)
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-make-dmaap: make-bus-controller make-message-router
+make-dmaap: make-bus-controller make-message-router make-dmaap-data-router
 
 make-bus-controller:
        cd charts && helm dep up dmaap-bus-controller && helm lint dmaap-bus-controller
@@ -21,5 +21,8 @@ make-bus-controller:
 make-message-router:
        cd charts && helm dep up message-router && helm lint message-router
 
+make-dmaap-data-router:
+       cd charts && helm dep up dmaap-data-router && helm lint dmaap-data-router
+
 clean:
        @find . -type f -name '*.tgz' -delete
index d453d75..8c61b6a 100644 (file)
 
 # Helm Chart for ONAP DMaaP Applications
 
-ONAP includes the following Kubernetes services:
+ONAP DMaaP includes the following Kubernetes services:
 
 1) message-router - a message bus for applications
 2) dbc-api - an API to provision DMaaP resources
+3) dmaap-data-router  -  an API to provision data feeds for consumers
 
 # Service Dependencies
 
 message-router depends on AAF
-dbc-api depends on AAF and Postgresql.
+dmaap-data-router depends on AAF
+dbc-api depends on AAF and Postgresql.
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dcaeLocations/san-francisco.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dcaeLocations/san-francisco.json
new file mode 100644 (file)
index 0000000..ca1e740
--- /dev/null
@@ -0,0 +1,5 @@
+{
+
+  "dcaeLayer": "kubernetes-central",
+  "dcaeLocationName": "san-francisco"
+}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dmaap/onap.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dmaap/onap.json
new file mode 100644 (file)
index 0000000..27411c6
--- /dev/null
@@ -0,0 +1,7 @@
+{
+  "dmaapName": "{{ include "common.namespace" . }}",
+  "drProvUrl": "https://dmaap-dr-prov:8443",
+  "version": "1",
+  "topicNsRoot": "org.onap.dmaap",
+  "bridgeAdminTopic": "DCAE_MM_AGENT"
+}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json
new file mode 100644 (file)
index 0000000..e807347
--- /dev/null
@@ -0,0 +1,8 @@
+{
+  "feedName": "Default PM Feed",
+  "feedVersion": "m1.1",
+  "feedDescription": "Default feed provisioned for PM File collector",
+  "asprClassification" : "unclassified",
+  "owner": "onap"
+}
+
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/README b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/README
new file mode 100644 (file)
index 0000000..4f5eac5
--- /dev/null
@@ -0,0 +1,3 @@
+#
+# Intent of this directory is for it to contain a file for each feed that needs to be provisioned in DR.
+# So, app teams can add files to this directory as needed without impacting each other's code.
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/mr_clusters/san-francisco.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/mr_clusters/san-francisco.json
new file mode 100644 (file)
index 0000000..9e732d2
--- /dev/null
@@ -0,0 +1,6 @@
+{
+  "dcaeLocationName": "san-francisco",
+  "fqdn": "message-router",
+  "topicProtocol": "http",
+  "topicPort": "3904"
+}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_READY.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_READY.json
new file mode 100644 (file)
index 0000000..0010f22
--- /dev/null
@@ -0,0 +1,6 @@
+{
+  "topicName": "PNF_READY",
+  "topicDescription": "This topic will be used to publish the PNF_READY events generated by the PNF REgistration Handler service in the DCAE platform.",
+  "owner": "PNFRegistrationHandler",
+  "txenabled": false
+}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_REGISTRATION.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_REGISTRATION.json
new file mode 100644 (file)
index 0000000..2b5c8a5
--- /dev/null
@@ -0,0 +1,6 @@
+{
+  "topicName": "PNF_REGISTRATION",
+  "topicDescription": "the VES collector will be publishing pnfRegistration events in this topic",
+  "owner": "VEScollector",
+  "txenabled": false
+}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/README b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/README
new file mode 100644 (file)
index 0000000..fbb88b9
--- /dev/null
@@ -0,0 +1,3 @@
+#
+# Intent of this directory is for it to contain a file for each topic that needs to be provisioned in MR.
+# So, app teams can add files to this directory as needed without impacting each other's code.
index ef50157..ead7562 100644 (file)
@@ -18,5 +18,75 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-config
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
 {{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-dmaap
+  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/dmaap/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-dcaelocations
+  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/dcaeLocations/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-mrclusters
+  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/mr_clusters/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-topics
+  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/topics/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-feeds
+  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/feeds/*.json").AsConfig . | indent 2 }}
index c1935b2..ae90a9f 100644 (file)
@@ -74,6 +74,18 @@ spec:
           - name: {{ include "common.name" . }}-config
             mountPath: /opt/app/config/conf
             subPath: buscontroller.env
+
+# NOTE: the basename of the subdirectory is important - it matches the DBCL API URI
+          - name: {{ include "common.name" . }}-dmaap
+            mountPath: /opt/app/config/dmaap/
+          - name: {{ include "common.name" . }}-dcaelocations
+            mountPath: /opt/app/config/dcaeLocations/
+          - name: {{ include "common.name" . }}-mrclusters
+            mountPath: /opt/app/config/mr_clusters/
+          - name: {{ include "common.name" . }}-topics
+            mountPath: /opt/app/config/topics/
+          - name: {{ include "common.name" . }}-feeds
+            mountPath: /opt/app/config/feeds/
           resources:
 {{ toYaml .Values.resources | indent 12 }}
         {{- if .Values.nodeSelector }}
@@ -91,5 +103,20 @@ spec:
         - name: {{ include "common.name" . }}-config
           configMap:
             name: {{ include "common.fullname" . }}-config
+        - name: {{ include "common.name" . }}-dmaap
+          configMap:
+            name: {{ include "common.fullname" . }}-dmaap
+        - name: {{ include "common.name" . }}-dcaelocations
+          configMap:
+            name: {{ include "common.fullname" . }}-dcaelocations
+        - name: {{ include "common.name" . }}-mrclusters
+          configMap:
+            name: {{ include "common.fullname" . }}-mrclusters
+        - name: {{ include "common.name" . }}-topics
+          configMap:
+            name: {{ include "common.fullname" . }}-topics
+        - name: {{ include "common.name" . }}-feeds
+          configMap:
+            name: {{ include "common.fullname" . }}-feeds
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 56e178b..85361d8 100644 (file)
@@ -31,7 +31,7 @@ pullPolicy: Always
 # application images
 repository: nexus3.onap.org:10001
 
-image: onap/dmaap/buscontroller:1.0.12
+image: onap/dmaap/buscontroller:1.0.17
 
 
 # application configuration
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/.helmignore b/kubernetes/dmaap/charts/dmaap-data-router/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/Chart.yaml b/kubernetes/dmaap/charts/dmaap-data-router/Chart.yaml
new file mode 100644 (file)
index 0000000..07de3be
--- /dev/null
@@ -0,0 +1,18 @@
+# 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.
+
+apiVersion: v1
+description: ONAP DMaaP Data Router
+name: dmaap-data-router
+version: 1.0
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/.helmignore b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/Chart.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/Chart.yaml
new file mode 100644 (file)
index 0000000..9e4a05d
--- /dev/null
@@ -0,0 +1,18 @@
+# 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.
+
+apiVersion: v1
+description: DMaaP Data Router MariaDB Instance
+name: dmaap-dr-db
+version: 1.0
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/resources/config/mariadb/conf.d/mariadb1.cnf b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/resources/config/mariadb/conf.d/mariadb1.cnf
new file mode 100644 (file)
index 0000000..ff2c637
--- /dev/null
@@ -0,0 +1,193 @@
+# Example MySQL config file for medium systems.
+#
+# This is for a system with memory 8G where MySQL plays
+# an important part, or systems up to 128M where MySQL is used together with
+# other programs (such as a web server)
+#
+# In this file, you can use all long options that a program supports.
+# If you want to know which options a program supports, run the program
+# with the "--help" option.
+
+# The following options will be passed to all MySQL clients
+##[client]
+##user            = root
+##port            = 3306
+##socket          = //opt/app/mysql/mysql.sock
+
+# Here follows entries for some specific programs
+
+# The MySQL server
+[mysqld]
+##performance_schema
+
+slow_query_log =ON
+long_query_time =2
+slow_query_log_file =//var/lib/mysql/slow_query.log
+
+skip-external-locking
+explicit_defaults_for_timestamp = true
+skip-symbolic-links
+local-infile = 0
+key_buffer_size = 16M
+max_allowed_packet = 4M
+table_open_cache = 100
+sort_buffer_size = 512K
+net_buffer_length = 8K
+read_buffer_size = 256K
+read_rnd_buffer_size = 512K
+myisam_sort_buffer_size = 8M
+max_connections = 300
+lower_case_table_names = 1
+thread_stack = 256K
+thread_cache_size = 25
+query_cache_size = 8M
+query_cache_type = 0
+query_prealloc_size = 512K
+query_cache_limit = 1M
+
+# Password validation
+##plugin-load-add=simple_password_check.so
+##simple_password_check_other_characters=0
+
+# Audit Log settings
+plugin-load-add=server_audit.so
+server_audit=FORCE_PLUS_PERMANENT
+server_audit_file_path=//var/lib/mysql/audit.log
+server_audit_file_rotate_size=50M
+server_audit_events=CONNECT,QUERY,TABLE
+server_audit_logging=on
+
+# Don't listen on a TCP/IP port at all. This can be a security enhancement,
+# if all processes that need to connect to mysqld run on the same host.
+# All interaction with mysqld must be made via Unix sockets or named pipes.
+# Note that using this option without enabling named pipes on Windows
+# (via the "enable-named-pipe" option) will render mysqld useless!
+#
+#skip-networking
+
+# Replication Master Server (default)
+# binary logging is required for replication
+##log-bin=//var/lib/mysql/mysql-bin
+
+# binary logging format - mixed recommended
+binlog_format=row
+
+# required unique id between 1 and 2^32 - 1
+# defaults to 1 if master-host is not set
+# but will not function as a master if omitted
+
+# Replication Slave (comment out master section to use this)
+#
+# To configure this host as a replication slave, you can choose between
+# two methods :
+#
+# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
+#    the syntax is:
+#
+#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
+#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
+#
+#    where you replace <host>, <user>, <password> by quoted strings and
+#    <port> by the master's port number (3306 by default).
+#
+#    Example:
+#
+#    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
+#    MASTER_USER='joe', MASTER_PASSWORD='secret';
+#
+# OR
+#
+# 2) Set the variables below. However, in case you choose this method, then
+#    start replication for the first time (even unsuccessfully, for example
+#    if you mistyped the password in master-password and the slave fails to
+#    connect), the slave will create a master.info file, and any later
+#    change in this file to the variables' values below will be ignored and
+#    overridden by the content of the master.info file, unless you shutdown
+#    the slave server, delete master.info and restart the slaver server.
+#    For that reason, you may want to leave the lines below untouched
+#    (commented) and instead use CHANGE MASTER TO (see above)
+#
+# required unique id between 2 and 2^32 - 1
+# (and different from the master)
+# defaults to 2 if master-host is set
+# but will not function as a slave if omitted
+#server-id       = 2
+#
+# The replication master for this slave - required
+#master-host     =   <hostname>
+#
+# The username the slave will use for authentication when connecting
+# to the master - required
+#master-user     =   <username>
+#
+# The password the slave will authenticate with when connecting to
+# the master - required
+#master-password =   <password>
+#
+# The port the master is listening on.
+# optional - defaults to 3306
+#master-port     =  <port>
+#
+# binary logging - not required for slaves, but recommended
+#log-bin=mysql-bin
+
+# Uncomment the following if you are using InnoDB tables
+##innodb_data_home_dir = //opt/app/mysql/data
+##innodb_data_file_path = ibdata1:20M:autoextend:max:32G
+##innodb_log_group_home_dir = //opt/app/mysql/iblogs
+# You can set .._buffer_pool_size up to 50 - 80 %
+# of RAM but beware of setting memory usage too high
+#innodb_buffer_pool_size = 6380M
+#innodb_additional_mem_pool_size = 2M
+# Set .._log_file_size to 25 % of buffer pool size
+innodb_log_file_size = 150M
+innodb_log_files_in_group = 3
+innodb_log_buffer_size = 8M
+#innodb_flush_log_at_trx_commit = 1
+innodb_lock_wait_timeout = 50
+innodb_autoextend_increment = 100
+expire_logs_days = 8
+open_files_limit = 2000
+transaction-isolation=READ-COMMITTED
+####### Galera parameters #######
+## Galera Provider configuration
+wsrep_provider=/usr/lib/galera/libgalera_smm.so
+wsrep_provider_options="gcache.size=1G; gcache.page_size=1G"
+## Galera Cluster configuration
+wsrep_cluster_name="MSO-automated-tests-cluster"
+wsrep_cluster_address="gcomm://"
+#wsrep_cluster_address="gcomm://mariadb1,mariadb2,mariadb3"
+##wsrep_cluster_address="gcomm://192.169.3.184,192.169.3.185,192.169.3.186"
+## Galera Synchronization configuration
+wsrep_sst_method=rsync
+#wsrep_sst_method=xtrabackup-v2
+#wsrep_sst_auth="sstuser:Mon#2o!6"
+## Galera Node configuration
+wsrep_node_name="mariadb1"
+##wsrep_node_address="192.169.3.184"
+wsrep_on=ON
+## Status notification
+#wsrep_notify_cmd=/opt/app/mysql/bin/wsrep_notify
+#######
+
+
+[mysqldump]
+quick
+max_allowed_packet = 16M
+
+[mysql]
+no-auto-rehash
+# Remove the next comment character if you are not familiar with SQL
+#safe-updates
+
+[myisamchk]
+key_buffer_size = 20971520
+
+##[mysqlhotcopy]
+##interactive-timeout
+##[mysqld_safe]
+##malloc-lib=//opt/app/mysql/local/lib/libjemalloc.so.1
+##log-error=//opt/app/mysql/log/mysqld.log
+
+general_log_file        = /var/log/mysql/mysql.log
+general_log             = 1
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/resources/config/mariadb/docker-entrypoint-initdb.d/sql_init_01.sql b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/resources/config/mariadb/docker-entrypoint-initdb.d/sql_init_01.sql
new file mode 100644 (file)
index 0000000..e7fade9
--- /dev/null
@@ -0,0 +1,144 @@
+USE `datarouter`;
+
+CREATE TABLE FEEDS (
+    FEEDID         INT UNSIGNED NOT NULL PRIMARY KEY,
+    GROUPID        INT(10) UNSIGNED NOT NULL DEFAULT 0,
+    NAME           VARCHAR(255) NOT NULL,
+    VERSION        VARCHAR(20) NOT NULL,
+    DESCRIPTION    VARCHAR(1000),
+    BUSINESS_DESCRIPTION VARCHAR(1000) DEFAULT NULL,
+    AUTH_CLASS     VARCHAR(32) NOT NULL,
+    PUBLISHER      VARCHAR(8) NOT NULL,
+    SELF_LINK      VARCHAR(256),
+    PUBLISH_LINK   VARCHAR(256),
+    SUBSCRIBE_LINK VARCHAR(256),
+    LOG_LINK       VARCHAR(256),
+    DELETED        BOOLEAN DEFAULT FALSE,
+    LAST_MOD       TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+    SUSPENDED      BOOLEAN DEFAULT FALSE,
+    CREATED_DATE   TIMESTAMP DEFAULT CURRENT_TIMESTAMP
+);
+
+CREATE TABLE FEED_ENDPOINT_IDS (
+    FEEDID        INT UNSIGNED NOT NULL,
+    USERID        VARCHAR(20) NOT NULL,
+    PASSWORD      VARCHAR(32) NOT NULL
+);
+
+CREATE TABLE FEED_ENDPOINT_ADDRS (
+    FEEDID        INT UNSIGNED NOT NULL,
+    ADDR          VARCHAR(44) NOT NULL
+);
+
+CREATE TABLE SUBSCRIPTIONS (
+    SUBID              INT UNSIGNED NOT NULL PRIMARY KEY,
+    FEEDID             INT UNSIGNED NOT NULL,
+    GROUPID            INT(10) UNSIGNED NOT NULL DEFAULT 0,
+    DELIVERY_URL       VARCHAR(256),
+    DELIVERY_USER      VARCHAR(20),
+    DELIVERY_PASSWORD  VARCHAR(32),
+    DELIVERY_USE100    BOOLEAN DEFAULT FALSE,
+    METADATA_ONLY      BOOLEAN DEFAULT FALSE,
+    SUBSCRIBER         VARCHAR(8) NOT NULL,
+    SELF_LINK          VARCHAR(256),
+    LOG_LINK           VARCHAR(256),
+    LAST_MOD           TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+    SUSPENDED          BOOLEAN DEFAULT FALSE,
+    CREATED_DATE       TIMESTAMP DEFAULT CURRENT_TIMESTAMP
+
+);
+
+CREATE TABLE PARAMETERS (
+    KEYNAME        VARCHAR(32) NOT NULL PRIMARY KEY,
+    VALUE          VARCHAR(4096) NOT NULL
+);
+
+CREATE TABLE LOG_RECORDS (
+    TYPE           ENUM('pub', 'del', 'exp', 'pbf', 'dlx') NOT NULL,
+    EVENT_TIME     BIGINT NOT NULL,           /* time of the publish request */
+    PUBLISH_ID     VARCHAR(64) NOT NULL,      /* unique ID assigned to this publish attempt */
+    FEEDID         INT UNSIGNED NOT NULL,     /* pointer to feed in FEEDS */
+    REQURI         VARCHAR(256) NOT NULL,     /* request URI */
+    METHOD         ENUM('DELETE', 'GET', 'HEAD', 'OPTIONS', 'PUT', 'POST', 'TRACE') NOT NULL, /* HTTP method */
+    CONTENT_TYPE   VARCHAR(256) NOT NULL,     /* content type of published file */
+    CONTENT_LENGTH BIGINT NOT NULL,  /* content length of published file */
+
+    FEED_FILEID    VARCHAR(256),        /* file ID of published file */
+    REMOTE_ADDR    VARCHAR(40),         /* IP address of publishing endpoint */
+    USER           VARCHAR(50),         /* user name of publishing endpoint */
+    STATUS         SMALLINT,            /* status code returned to delivering agent */
+
+    DELIVERY_SUBID INT UNSIGNED,        /* pointer to subscription in SUBSCRIPTIONS */
+    DELIVERY_FILEID  VARCHAR(256),      /* file ID of file being delivered */
+    RESULT         SMALLINT,            /* result received from subscribing agent */
+
+    ATTEMPTS       INT,             /* deliveries attempted */
+    REASON         ENUM('notRetryable', 'retriesExhausted', 'diskFull', 'other'),
+
+    RECORD_ID      BIGINT UNSIGNED NOT NULL PRIMARY KEY, /* unique ID for this record */
+    CONTENT_LENGTH_2 BIGINT,
+
+    INDEX (FEEDID) USING BTREE,
+    INDEX (DELIVERY_SUBID) USING BTREE,
+    INDEX (RECORD_ID) USING BTREE
+) ENGINE = MyISAM;
+
+CREATE TABLE INGRESS_ROUTES (
+    SEQUENCE  INT UNSIGNED NOT NULL,
+    FEEDID    INT UNSIGNED NOT NULL,
+    USERID    VARCHAR(20),
+    SUBNET    VARCHAR(44),
+    NODESET   INT UNSIGNED NOT NULL
+);
+
+CREATE TABLE EGRESS_ROUTES (
+    SUBID    INT UNSIGNED NOT NULL PRIMARY KEY,
+    NODEID   INT UNSIGNED NOT NULL
+);
+
+CREATE TABLE NETWORK_ROUTES (
+    FROMNODE INT UNSIGNED NOT NULL,
+    TONODE   INT UNSIGNED NOT NULL,
+    VIANODE  INT UNSIGNED NOT NULL
+);
+
+CREATE TABLE NODESETS (
+    SETID   INT UNSIGNED NOT NULL,
+    NODEID  INT UNSIGNED NOT NULL
+);
+
+CREATE TABLE NODES (
+    NODEID  INT UNSIGNED NOT NULL PRIMARY KEY,
+    NAME    VARCHAR(255) NOT NULL,
+    ACTIVE  BOOLEAN DEFAULT TRUE
+);
+
+CREATE TABLE GROUPS (
+    GROUPID        INT UNSIGNED NOT NULL PRIMARY KEY,
+    AUTHID         VARCHAR(100) NOT NULL,
+    NAME           VARCHAR(50) NOT NULL,
+    DESCRIPTION    VARCHAR(255),
+    CLASSIFICATION VARCHAR(20) NOT NULL,
+    MEMBERS        TINYTEXT,
+    LAST_MOD       TIMESTAMP DEFAULT CURRENT_TIMESTAMP
+);
+
+INSERT INTO PARAMETERS VALUES
+    ('ACTIVE_POD',  '{{.Values.global.config.dmaapDrProv.name}}'),
+    ('PROV_ACTIVE_NAME', '{{.Values.global.config.dmaapDrProv.name}}'),
+    ('STANDBY_POD', ''),
+    ('PROV_NAME',   '{{.Values.global.config.dmaapDrProv.name}}'),
+    ('NODES',       '{{.Values.global.config.dmaapDrNode.name}}'),
+    ('PROV_DOMAIN', '{{ include "common.namespace" . }}'),
+    ('DELIVERY_INIT_RETRY_INTERVAL', '10'),
+    ('DELIVERY_MAX_AGE', '86400'),
+    ('DELIVERY_MAX_RETRY_INTERVAL', '3600'),
+    ('DELIVERY_RETRY_RATIO', '2'),
+    ('LOGROLL_INTERVAL', '300'),
+    ('PROV_AUTH_ADDRESSES', '{{.Values.global.config.dmaapDrProv.name}}|{{.Values.global.config.dmaapDrNode.name}}'),
+    ('PROV_AUTH_SUBJECTS', ''),
+    ('PROV_MAXFEED_COUNT',  '10000'),
+    ('PROV_MAXSUB_COUNT',   '100000'),
+    ('PROV_REQUIRE_CERT', 'false'),
+    ('PROV_REQUIRE_SECURE', 'false'),
+    ('_INT_VALUES', 'LOGROLL_INTERVAL|PROV_MAXFEED_COUNT|PROV_MAXSUB_COUNT|DELIVERY_INIT_RETRY_INTERVAL|DELIVERY_MAX_RETRY_INTERVAL|DELIVERY_RETRY_RATIO|DELIVERY_MAX_AGE');
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/NOTES.txt b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/NOTES.txt
new file mode 100644 (file)
index 0000000..7187941
--- /dev/null
@@ -0,0 +1,33 @@
+# Copyright © 2018  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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+  http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.global.config.mariadb.servicetype }}
+  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.global.config.mariadb.servicetype }}
+     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.global.config.mariadb.externalPort}}
+{{- else if contains "ClusterIP" .Values.global.config.mariadb.servicetype }}
+  export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "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.global.config.mariadb.internalPort}}
+{{- end }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/configmap.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..dd75846
--- /dev/null
@@ -0,0 +1,39 @@
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-mdb-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/mariadb/conf.d/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-mdb-initd-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/mariadb/docker-entrypoint-initdb.d/sql_init_01.sql").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/deployment.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..6b19804
--- /dev/null
@@ -0,0 +1,107 @@
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{.Values.global.config.mariadb.internalPort}}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{- if eq .Values.liveness.enabled true }}
+          args:
+          - --lower-case-table-names=1
+          - --wait_timeout=28800
+          livenessProbe:
+            tcpSocket:
+              port: {{.Values.global.config.mariadb.internalPort}}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end -}}
+          readinessProbe:
+            tcpSocket:
+              port: {{.Values.global.config.mariadb.internalPort}}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          env:
+          - name: MYSQL_ROOT_PASSWORD
+            valueFrom:
+              secretKeyRef:
+                name: {{ template "common.fullname" . }}-secret
+                key: db-root-password
+          - name: MYSQL_USER
+            value: {{.Values.global.config.mariadb.userName}}
+          - name: MYSQL_DATABASE
+            value: {{.Values.global.config.mariadb.mysqlDatabase}}
+          - name: MYSQL_PASSWORD
+            valueFrom:
+              secretKeyRef:
+                name: {{ template "common.fullname" . }}-secret
+                key: db-user-password
+          volumeMounts:
+          - mountPath: /docker-entrypoint-initdb.d/sql_init_01.sql
+            name: docker-entrypoint-initdb
+            subPath: sql_init_01.sql
+          - mountPath: /etc/mysql/conf.d
+            name: mariadb-conf
+          - mountPath: /var/lib/mysql
+            name: mariadb-data
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name: docker-entrypoint-initdb
+          configMap:
+            name: {{ include "common.fullname" . }}-mdb-initd-configmap
+        - name: mariadb-conf
+          configMap:
+            name: {{ include "common.fullname" . }}-mdb-configmap
+        - name: mariadb-data
+        {{- if .Values.persistence.enabled }}
+          persistentVolumeClaim:
+            claimName: {{ include "common.fullname" . }}
+        {{- else }}
+          emptyDir: {}
+        {{- end }}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/pv.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/pv.yaml
new file mode 100644 (file)
index 0000000..da117f4
--- /dev/null
@@ -0,0 +1,37 @@
+{{/*
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+    name: {{ include "common.fullname" . }}
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size }}
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+  hostPath:
+    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/secrets.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/templates/secrets.yaml
new file mode 100644 (file)
index 0000000..bc93b9e
--- /dev/null
@@ -0,0 +1,28 @@
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-secret
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+type: Opaque
+data:
+  db-root-password: {{ .Values.global.config.mariadb.mariadbRootPassword | b64enc | quote }}
+  db-user-password: {{ .Values.global.config.mariadb.userPassword | b64enc | quote }}
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-apiVersion: extensions/v1beta1
-kind: Deployment
+apiVersion: v1
+kind: Service
 metadata:
-  name: {{ include "common.fullname" . }}
+  name: {{.Values.global.config.mariadb.name}}
   namespace: {{ include "common.namespace" . }}
   labels:
     app: {{ include "common.name" . }}
@@ -23,22 +23,16 @@ metadata:
     release: {{ .Release.Name }}
     heritage: {{ .Release.Service }}
 spec:
-  replicas: {{ .Values.replicaCount }}
+  type: {{.Values.global.config.mariadb.servicetype}}
+  ports:
+    {{if eq .Values.global.config.mariadb.servicetype "NodePort" -}}
+    - port: {{.Values.global.config.mariadb.internalPort}}
+      nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+    {{- else -}}
+    - port: {{.Values.global.config.mariadb.externalPort}}
+      targetPort: {{.Values.global.config.mariadb.internalPort}}
+    {{- end}}
+      name: {{.Values.global.config.mariadb.name}}
   selector:
-    matchLabels:
-      app: {{ include "common.name" . }}
-  template:
-    metadata:
-      labels:
-        app: {{ include "common.name" . }}
-        release: {{ .Release.Name }}
-      name: {{ include "common.name" . }}
-    spec:
-      hostname: {{ include "common.name" . }}
-      containers:
-      - args:
-        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
-        imagePullPolicy: {{ .Values.pullPolicy | default .Values.global.pullPolicy }}
-        name: {{ include "common.name" . }}
-      imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/values.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-db/values.yaml
new file mode 100644 (file)
index 0000000..cf61c49
--- /dev/null
@@ -0,0 +1,79 @@
+# 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.
+
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+  persistence: {}
+
+# application image
+repository: nexus3.onap.org:10001
+image: mariadb:10.2.14
+pullPolicy: Always
+
+# application configuration - see parent values chart
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 30
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+
+readiness:
+  initialDelaySeconds: 30
+  periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+  enabled: true
+  volumeReclaimPolicy: Retain
+  accessMode: ReadWriteMany
+  size: 1Gi
+  mountPath: /dockerdata-nfs
+  mountSubPath: dmaap/dr-db/data
+
+ingress:
+  enabled: false
+
+resources: {}
+  # We usually recommend not to specify default resources and to leave this as a conscious
+  # choice for the user. This also increases chances charts run on environments with little
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+  #
+  # Example:
+  # Configure resource requests and limits
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+  # Minimum memory for development is 2 CPU cores and 4GB memory 
+  # Minimum memory for production is 4 CPU cores and 8GB memory 
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/.helmignore b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/Chart.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/Chart.yaml
new file mode 100644 (file)
index 0000000..084aa58
--- /dev/null
@@ -0,0 +1,18 @@
+# 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.
+
+apiVersion: v1
+description: ONAP DMaaP Data Router Node Server
+name: dmaap-dr-node
+version: 1.0
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/createFeed.sh b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/createFeed.sh
new file mode 100644 (file)
index 0000000..a6a829a
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+dr_prov_url="{{.Values.global.config.dmaapDrProv.name}}:{{.Values.global.config.dmaapDrProv.internalPort2}}"
+ct_header="Content-Type:application/vnd.att-dr.feed"
+obo_header="X-ATT-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/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json
new file mode 100644 (file)
index 0000000..a96f46d
--- /dev/null
@@ -0,0 +1,18 @@
+{
+  "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
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/node.properties b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/node.properties
new file mode 100644 (file)
index 0000000..41062c7
--- /dev/null
@@ -0,0 +1,111 @@
+#-------------------------------------------------------------------------------
+# ============LICENSE_START==================================================
+# * org.onap.dmaap
+# * ===========================================================================
+# * Copyright © 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.
+# *
+#-------------------------------------------------------------------------------
+#
+#    Configuration parameters fixed at startup for the DataRouter node
+#
+#    URL to retrieve dynamic configuration
+#
+#ProvisioningURL:    ${DRTR_PROV_INTURL}
+ProvisioningURL=https://{{.Values.global.config.dmaapDrProv.name}}:{{.Values.global.config.dmaapDrProv.externalPort2}}/internal/prov
+
+#
+#    URL to upload PUB/DEL/EXP logs
+#
+#LogUploadURL:    ${DRTR_LOG_URL}
+LogUploadURL=https://{{.Values.global.config.dmaapDrProv.name}}:{{.Values.global.config.dmaapDrProv.externalPort2}}/internal/logs
+
+#
+#    The port number for http as seen within the server
+#
+#IntHttpPort:    ${DRTR_NODE_INTHTTPPORT:-8080}
+IntHttpPort={{.Values.global.config.dmaapDrNode.internalPort}}
+#
+#    The port number for https as seen within the server
+#
+IntHttpsPort={{.Values.global.config.dmaapDrNode.internalPort2}}
+#
+#    The external port number for https taking port mapping into account
+#
+ExtHttpsPort=443
+#
+#    The minimum interval between fetches of the dynamic configuration
+#    from the provisioning server
+#
+MinProvFetchInterval=10000
+#
+#    The minimum interval between saves of the redirection data file
+#
+MinRedirSaveInterval=10000
+#
+#    The path to the directory where log files are stored
+#
+LogDir=/opt/app/datartr/logs
+#
+#    The retention interval (in days) for log files
+#
+LogRetention=30
+#
+#    The path to the directories where data and meta data files are stored
+#
+SpoolDir=/opt/app/datartr/spool
+#
+#    The path to the redirection data file
+#
+#RedirectionFile:    etc/redirections.dat
+#
+#    The type of keystore for https
+#
+KeyStoreType=jks
+#
+#    The path to the keystore for https
+#
+KeyStoreFile=/opt/app/datartr/aaf_certs/org.onap.dmaap-dr.jks
+#
+#    The password for the https keystore
+#
+KeyStorePassword=4*&GD+w58RUM]01No.CYY;z6
+#
+#    The password for the private key in the https keystore
+#
+KeyPassword=4*&GD+w58RUM]01No.CYY;z6
+#
+#    The type of truststore for https
+#
+TrustStoreType=jks
+#
+#    The path to the truststore for https
+#
+TrustStoreFile=/opt/app/datartr/aaf_certs/org.onap.dmaap-dr.trust.jks
+#
+#    The password for the https truststore
+#
+TrustStorePassword=UDXlT6Iu[F)k,Htk92+B,0Xj
+#
+#    The path to the file used to trigger an orderly shutdown
+#
+QuiesceFile=etc/SHUTDOWN
+#
+#    The key used to generate passwords for node to node transfers
+#
+NodeAuthKey=Node123!
+
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/NOTES.txt b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/NOTES.txt
new file mode 100644 (file)
index 0000000..42d7663
--- /dev/null
@@ -0,0 +1,33 @@
+# Copyright © 2018  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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+  http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.global.config.dmaapDrNode.servicetype }}
+  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.global.config.dmaapDrNode.servicetype }}
+     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.global.config.dmaapDrNode.externalPort}}
+{{- else if contains "ClusterIP" .Values.global.config.dmaapDrNode.servicetype }}
+  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.global.config.dmaapDrNode.internalPort}}
+{{- end }}
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/configmap.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..bd74184
--- /dev/null
@@ -0,0 +1,39 @@
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-node-props-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/node.properties").AsConfig . | indent 2 }}
+---
+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 }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..2aae2d0
--- /dev/null
@@ -0,0 +1,114 @@
+# 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.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      hostname: {{.Values.global.config.dmaapDrNode.name}}
+      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
+          - {{.Values.global.config.dmaapDrProv.name}}
+          env:
+          - name: NAMESPACE
+            valueFrom:
+              fieldRef:
+                apiVersion: v1
+                fieldPath: metadata.namespace
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{.Values.global.config.dmaapDrNode.externalPort}}
+          - containerPort: {{.Values.global.config.dmaapDrNode.externalPort2}}
+          {{- if eq .Values.liveness.enabled true }}
+          livenessProbe:
+            tcpSocket:
+              port: {{.Values.global.config.dmaapDrNode.internalPort}}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end -}}
+          readinessProbe:
+            tcpSocket:
+              port: {{.Values.global.config.dmaapDrNode.internalPort}}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: false
+          - mountPath: /opt/app/datartr/etc/dedicatedFeed.json
+            subPath: dedicatedFeed.json
+            name: create-feed
+          - mountPath: /opt/app/datartr/etc/createFeed.sh
+            subPath: createFeed.sh
+            name: create-feed
+          - mountPath: /opt/app/datartr/etc/node.properties
+            subPath: node.properties
+            name: node-props
+          lifecycle:
+            postStart:
+              exec:
+                command:
+                - /opt/app/datartr/etc/createFeed.sh
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: create-feed
+        configMap:
+          name: {{ include "common.fullname" . }}-create-feed-configmap
+          defaultMode: 0755
+      - name: node-props
+        configMap:
+          name: {{ include "common.fullname" . }}-node-props-configmap
+      - name: dr-node-data
+      {{- if .Values.persistence.enabled }}
+        persistentVolumeClaim:
+          claimName: {{ include "common.fullname" . }}
+      {{- else }}
+        emptyDir: {}
+      {{- end }}
+    imagePullSecrets:
+    - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/service.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/service.yaml
new file mode 100644 (file)
index 0000000..e13e854
--- /dev/null
@@ -0,0 +1,49 @@
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{.Values.global.config.dmaapDrNode.name}}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+      service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+  type: {{.Values.global.config.dmaapDrNode.servicetype}}
+  ports:
+    {{if eq .Values.global.config.dmaapDrNode.servicetype "NodePort" -}}
+    - port: {{.Values.global.config.dmaapDrNode.externalPort}}
+      targetPort: {{.Values.global.config.dmaapDrNode.internalPort}}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrNode.nodePort}}
+      name: {{.Values.global.config.dmaapDrNode.name}}
+    - port: {{.Values.global.config.dmaapDrNode.externalPort2}}
+      targetPort: {{.Values.global.config.dmaapDrNode.internalPort2}}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrNode.nodePort2}}
+      name: {{.Values.global.config.dmaapDrNode.name}}2
+    {{- else -}}
+    - port: {{.Values.global.config.dmaapDrNode.externalPort}}
+      targetPort: {{.Values.global.config.dmaapDrNode.internalPort}}
+      name: {{.Values.global.config.dmaapDrNode.name}}
+    - port: {{.Values.global.config.dmaapDrNode.externalPort2}}
+      targetPort: {{.Values.global.config.dmaapDrNode.internalPort2}}
+      name: {{.Values.global.config.dmaapDrNode.name}}2
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/values.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/values.yaml
new file mode 100644 (file)
index 0000000..272f653
--- /dev/null
@@ -0,0 +1,80 @@
+# 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:
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.0
+  loggingRepository: docker.elastic.co
+  loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/dmaap/datarouter-node
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration - see parent values chart
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 30
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+
+readiness:
+  initialDelaySeconds: 30
+  periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+  enabled: false
+
+ingress:
+  enabled: false
+
+resources: {}
+  # We usually recommend not to specify default resources and to leave this as a conscious
+  # choice for the user. This also increases chances charts run on environments with little
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+  #
+  # Example:
+  # Configure resource requests and limits
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+  # Minimum memory for development is 2 CPU cores and 4GB memory
+  # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/.helmignore b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/Chart.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/Chart.yaml
new file mode 100644 (file)
index 0000000..591e9e0
--- /dev/null
@@ -0,0 +1,18 @@
+# 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.
+
+apiVersion: v1
+description: ONAP DMaaP Data Router Provisioning Server
+name: dmaap-dr-prov
+version: 1.0
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/resources/config/provserver.properties b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/resources/config/provserver.properties
new file mode 100644 (file)
index 0000000..6bde746
--- /dev/null
@@ -0,0 +1,49 @@
+#-------------------------------------------------------------------------------
+# ============LICENSE_START==================================================
+# * org.onap.dmaap
+# * ===========================================================================
+# * Copyright © 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.
+# *
+#-------------------------------------------------------------------------------
+
+
+#Jetty Server properties
+org.onap.dmaap.datarouter.provserver.http.port           = {{.Values.global.config.dmaapDrProv.externalPort}}
+org.onap.dmaap.datarouter.provserver.https.port          = {{.Values.global.config.dmaapDrProv.externalPort2}}
+org.onap.dmaap.datarouter.provserver.https.relaxation   = true
+
+org.onap.dmaap.datarouter.provserver.keymanager.password = Qgw77oaQcdP*F8Pwa[&.,.Ab
+org.onap.dmaap.datarouter.provserver.keystore.type       = jks
+org.onap.dmaap.datarouter.provserver.keystore.path       = /opt/app/datartr/aaf_certs/org.onap.dmaap-dr.jks
+org.onap.dmaap.datarouter.provserver.keystore.password   = Qgw77oaQcdP*F8Pwa[&.,.Ab
+org.onap.dmaap.datarouter.provserver.truststore.path     = /opt/app/datartr/aaf_certs/org.onap.dmaap-dr.trust.jks
+org.onap.dmaap.datarouter.provserver.truststore.password = 9M?)?:KAj1z6gpLhNrVUG@0T
+org.onap.dmaap.datarouter.provserver.accesslog.dir       = /opt/app/datartr/logs
+org.onap.dmaap.datarouter.provserver.spooldir            = /opt/app/datartr/spool
+org.onap.dmaap.datarouter.provserver.dbscripts           = /opt/app/datartr/etc/misc
+org.onap.dmaap.datarouter.provserver.logretention        = 30
+
+#DMAAP-597 (Tech Dept) REST request source IP auth
+# relaxation to accommodate OOM kubernetes deploy
+org.onap.dmaap.datarouter.provserver.isaddressauthenabled = false
+
+# Database access
+org.onap.dmaap.datarouter.db.driver   = org.mariadb.jdbc.Driver
+org.onap.dmaap.datarouter.db.url      = jdbc:mariadb://{{.Values.global.config.mariadb.name}}:{{.Values.global.config.mariadb.externalPort}}/datarouter
+org.onap.dmaap.datarouter.db.login    = datarouter
+org.onap.dmaap.datarouter.db.password = datarouter
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/NOTES.txt b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/NOTES.txt
new file mode 100644 (file)
index 0000000..64e6abf
--- /dev/null
@@ -0,0 +1,33 @@
+# Copyright © 2018  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.
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+  http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.global.config.dmaapDrProv.servicetype }}
+  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.global.config.dmaapDrProv.servicetype }}
+     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.global.config.dmaapDrProv.externalPort}}
+{{- else if contains "ClusterIP" .Values.global.config.dmaapDrProv.servicetype }}
+  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.global.config.dmaapDrProv.internalPort}}
+{{- end }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/configmap.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..525c18b
--- /dev/null
@@ -0,0 +1,26 @@
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-prov-props-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/provserver.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..d956581
--- /dev/null
@@ -0,0 +1,99 @@
+# 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.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      hostname: {{.Values.global.config.dmaapDrProv.name}}
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - {{.Values.global.config.mariadb.name}}
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{.Values.global.config.dmaapDrProv.externalPort}}
+          - containerPort: {{.Values.global.config.dmaapDrProv.externalPort2}}
+          {{- if eq .Values.liveness.enabled true }}
+          livenessProbe:
+            tcpSocket:
+              port: {{.Values.global.config.dmaapDrProv.externalPort}}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end -}}
+          readinessProbe:
+            tcpSocket:
+              port: {{.Values.global.config.dmaapDrProv.externalPort}}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: false
+          - mountPath: /opt/app/datartr/etc/provserver.properties
+            subPath: provserver.properties
+            name: prov-props
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: prov-props
+        configMap:
+          name: {{ include "common.fullname" . }}-prov-props-configmap
+      - name: dr-prov-data
+      {{- if .Values.persistence.enabled }}
+        persistentVolumeClaim:
+          claimName: {{ include "common.fullname" . }}
+      {{- else }}
+        emptyDir: {}
+      {{- end }}
+    imagePullSecrets:
+    - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/service.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/service.yaml
new file mode 100644 (file)
index 0000000..15059c6
--- /dev/null
@@ -0,0 +1,60 @@
+# 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{.Values.global.config.dmaapDrProv.name}}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+    msb.onap.org/service-info: '[
+      {
+          "serviceName": "{{.Values.global.config.dmaapDrProv.name}}",
+          "version": "v1",
+          "url": "/",
+          "protocol": "REST",
+          "port": "{{.Values.global.config.dmaapDrProv.externalPort}}",
+          "visualRange":"1"
+      }
+      ]'
+
+spec:
+  type: {{.Values.global.config.dmaapDrProv.servicetype}}
+  ports:
+    {{if eq .Values.global.config.dmaapDrProv.servicetype "NodePort" -}}
+    - port: {{.Values.global.config.dmaapDrProv.externalPort}}
+      targetPort: {{.Values.global.config.dmaapDrProv.internalPort}}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrProv.nodePort}}
+      name: {{.Values.global.config.dmaapDrProv.name}}
+    - port: {{.Values.global.config.dmaapDrProv.externalPort2}}
+      targetPort: {{.Values.global.config.dmaapDrProv.internalPort2}}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrProv.nodePort2}}
+      name: {{.Values.global.config.dmaapDrProv.name}}2
+    {{- else -}}
+    - port: {{.Values.global.config.dmaapDrProv.externalPort}}
+      targetPort: {{.Values.global.config.dmaapDrProv.internalPort}}
+      name: {{.Values.global.config.dmaapDrProv.name}}
+    - port: {{.Values.global.config.dmaapDrProv.externalPort2}}
+      targetPort: {{.Values.global.config.dmaapDrProv.internalPort2}}
+      name: {{.Values.global.config.dmaapDrProv.name}}2
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/values.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/values.yaml
new file mode 100644 (file)
index 0000000..9b237b5
--- /dev/null
@@ -0,0 +1,81 @@
+# 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:
+  nodePortPrefix: 302
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.0
+  loggingRepository: docker.elastic.co
+  loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/dmaap/datarouter-prov
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration - see parent values chart
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 30
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+
+readiness:
+  initialDelaySeconds: 30
+  periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+  enabled: false
+
+ingress:
+  enabled: false
+
+resources: {}
+  # We usually recommend not to specify default resources and to leave this as a conscious
+  # choice for the user. This also increases chances charts run on environments with little
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+  #
+  # Example:
+  # Configure resource requests and limits
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+  # Minimum memory for development is 2 CPU cores and 4GB memory
+  # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
\ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/requirements.yaml b/kubernetes/dmaap/charts/dmaap-data-router/requirements.yaml
new file mode 100644 (file)
index 0000000..480e9e3
--- /dev/null
@@ -0,0 +1,19 @@
+# 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.
+
+dependencies:
+  - name: common
+    version: ~2.0.0
+    repository: '@local'
+
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/values.yaml b/kubernetes/dmaap/charts/dmaap-data-router/values.yaml
new file mode 100644 (file)
index 0000000..7f29f93
--- /dev/null
@@ -0,0 +1,58 @@
+# 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.
+
+#################################################################
+# DMaap Data Router Global config defaults.
+#################################################################
+global:
+  persistence: {}
+  env:
+    name: AUTO
+  ubuntuInitRepository: oomk8s
+  ubuntuInitImage: ubuntu-init:1.0.0
+
+  config:
+# dr db configuration
+    mariadb:
+      servicetype: ClusterIP
+      name: dmaap-dr-db
+      portName: dr-db-port
+      internalPort: 3306
+      externalPort: 3306
+      mariadbRootPassword: datarouter
+      userName: datarouter
+      userPassword: datarouter
+      mysqlDatabase: datarouter
+# dr provisioning server configuration
+    dmaapDrProv:
+      servicetype: NodePort
+      name: dmaap-dr-prov
+      externalPort: 8080
+      externalPort2: 8443
+      internalPort: 8080
+      internalPort2: 8443
+      portName: dr-prov-port
+      portName2: dr-prov-port2
+      nodePort: 59
+      nodePort2: 69
+# dr node server configuration
+    dmaapDrNode:
+      servicetype: ClusterIP
+      name: dmaap-dr-node
+      externalPort: 8080
+      internalPort: 8080
+      externalPort2: 8443
+      internalPort2: 8443
+      portName: dr-node-port
+      portName2: dr-node-port2
index 5f8b8bb..ee695f9 100644 (file)
@@ -85,16 +85,14 @@ spec:
         env:
         - name: KAFKA_ZOOKEEPER_CONNECT
           value: "{{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}"
-        - name: KAFKA_ADVERTISED_HOST_NAME
-          value: "{{ include "common.servicename" .  }}"
-        - name: KAFKA_BROKER_ID
-          value: "0"
+        - name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
+          value: "INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT"
         - name: KAFKA_ADVERTISED_LISTENERS
-          value: PLAINTEXT://{{ include "common.name" .  }}:{{.Values.service.internalPort}}
-        - name: KAFKA_ADVERTISED_PORT
-          value: "{{.Values.service.internalPort}}"
-        - name: KAFKA_PORT
-          value: "{{.Values.service.internalPort}}"
+          value: "INTERNAL_PLAINTEXT://{{ include "common.servicename" .  }}:{{.Values.service.internalPort}}"
+        - name: KAFKA_LISTENERS
+          value: "INTERNAL_PLAINTEXT://0.0.0.0:{{.Values.service.internalPort}}"
+        - name: KAFKA_INTER_BROKER_LISTENER_NAME
+          value: "INTERNAL_PLAINTEXT"
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
index 2fd3c5d..ad1567d 100644 (file)
@@ -29,8 +29,8 @@ global:
 # Application configuration defaults.
 #################################################################
 # application image
-repository: docker.io
-image: wurstmeister/kafka:1.1.0
+repository: nexus3.onap.org:10001
+image: onap/dmaap/kafka01101:0.0.1
 pullPolicy: Always
 ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
 
index ff13eb7..1ed7888 100644 (file)
@@ -18,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-msgrtrapi-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/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
 ---
@@ -26,5 +31,10 @@ 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/dmaap/cadi.properties").AsConfig . | indent 2 }}
index 58e60f3..098ffe1 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dmaap/dmaap-mr:1.1.5
+image: onap/dmaap/dmaap-mr:1.1.6
 pullPolicy: Always
 
 kafka:
index b47761d..096ef78 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ae53f85..0608dab 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index dde49c1..e2b067f 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index e1b27bb..b44b4d2 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 678db1a..f197aa1 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index bddbf21..9beb17d 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f639633..c414a01 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 8b2c310..b9a51f1 100644 (file)
@@ -1,3 +1,20 @@
+<?xml version = "1.0" encoding = "UTF-8" ?>
+<!--
+# 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.
+-->
+
 <?xml version="1.0" encoding="UTF-8"?>
 <configuration debug="true" scan="true" scanPeriod="3 seconds">
    <!--<jmxConfigurator /> -->
@@ -24,4 +41,4 @@
       <encoder>
          <pattern>${pattern}</pattern>
       </encoder>
-   </appender>
\ No newline at end of file
+   </appender>
index 49197d3..d099a42 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index c1c46b1..d7c50a9 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index a0c82be..18a4f84 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-esr-filebeat
   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/log/filebeat/*").AsConfig . | indent 2 }}
 ---
@@ -25,6 +31,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-esr-esrserver-log
   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/log/esrserver/logback.xml").AsConfig . | indent 2 }}
-
index 3f15df8..3cb568a 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 312a7bd..dfa1ef0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index eb17662..8f0ab5e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
diff --git a/kubernetes/helm/plugins/deploy/deploy.sh b/kubernetes/helm/plugins/deploy/deploy.sh
new file mode 100755 (executable)
index 0000000..07455d7
--- /dev/null
@@ -0,0 +1,168 @@
+#!/bin/bash
+
+usage() {
+cat << EOF
+Install (or upgrade) an umbrella Helm Chart, and its subcharts, as separate Helm Releases 
+
+The umbrella Helm Chart is broken apart into a parent release and subchart releases.
+Subcharts the are disabled (<chart>.enabled=false) will not be installed or upgraded.
+All releases are grouped and deployed within the same namespace.
+
+
+The deploy arguments must be a release and chart. The chart
+argument can be either: a chart reference('stable/onap'), a path to a chart directory,
+a packaged chart, or a fully qualified URL. For chart references, the latest
+version will be specified unless the '--version' flag is set.
+
+To override values in a chart, use either the '--values' flag and pass in a file
+or use the '--set' flag and pass configuration from the command line, to force string
+values, use '--set-string'.
+
+You can specify the '--values'/'-f' flag multiple times. The priority will be given to the
+last (right-most) file specified. For example, if both myvalues.yaml and override.yaml
+contained a key called 'Test', the value set in override.yaml would take precedence:
+
+       $ helm deploy demo ./onap --namespace onap -f openstack.yaml -f overrides.yaml
+
+You can specify the '--set' flag multiple times. The priority will be given to the
+last (right-most) set specified. For example, if both 'bar' and 'newbar' values are
+set for a key called 'foo', the 'newbar' value would take precedence:
+
+       $ helm deploy demo local/onap --namespace onap -f overrides.yaml --set log.enabled=false --set vid.enabled=false
+
+Usage:
+  helm deploy [RELEASE] [CHART] [flags]
+
+Flags:
+      --namespace string         namespace to install the release into. Defaults to the current kube config namespace.
+      --set stringArray          set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
+      --set-string stringArray   set STRING values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
+  -f, --values valueFiles        specify values in a YAML file or a URL(can specify multiple) (default [])
+EOF
+}
+
+parse_yaml() {
+  local prefix=$2
+  local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
+  sed -ne "s|^\($s\)\($w\)$s:$s\"\(.*\)\"$s\$|\1$fs\2$fs\3|p" \
+       -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p"  $1 |
+  awk -F$fs '{
+     indent = length($1)/2;
+     vname[indent] = $2;
+     for (i in vname) {if (i > indent) {delete vname[i]}}
+     if (length($3) > 0) {
+        vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])("_")}
+        printf("%s%s%s=\"%s\"\n", "'$prefix'",vn, $2, $3);
+     }
+  }'
+}
+
+generate_overrides() {
+  SUBCHART_NAMES=($(cat $COMPUTED_OVERRIDES | grep -v '^\s\s'))
+
+  for index in "${!SUBCHART_NAMES[@]}"; do
+    START=${SUBCHART_NAMES[index]}
+    END=${SUBCHART_NAMES[index+1]}
+    if [[ $START == "global:" ]]; then
+      echo "global:" > $GLOBAL_OVERRIDES
+      cat $COMPUTED_OVERRIDES | sed '/common:/,/consul:/d' \
+        | sed -n '/'"$START"'/,/'log:'/p' | sed '1d;$d' >> $GLOBAL_OVERRIDES  
+    else
+      SUBCHART_DIR="$CACHE_SUBCHART_DIR/$(cut -d':' -f1 <<<"$START")"
+      if [[ -d "$SUBCHART_DIR" ]]; then
+        cat $COMPUTED_OVERRIDES | sed -n '/'"$START"'/,/'"$END"'/p' \
+          | sed '1d;$d' | cut -c3- > $SUBCHART_DIR/subchart-overrides.yaml
+      fi
+    fi
+  done
+}
+
+deploy() {
+  RELEASE=$1
+  CHART_URL=$2
+  FLAGS=${@:3}
+  CHART_REPO="$(cut -d'/' -f1 <<<"$CHART_URL")"
+  CHART_NAME="$(cut -d'/' -f2 <<<"$CHART_URL")"
+  CACHE_DIR=~/.helm/plugins/deploy/cache
+  CHART_DIR=$CACHE_DIR/$CHART_NAME
+  CACHE_SUBCHART_DIR=$CHART_DIR-subcharts
+  # should pass all flags instead
+  NAMESPACE="$(echo $FLAGS | sed -n 's/.*\(namespace\).\s*/\1/p' | cut -c10-)"
+  # clear previously cached charts
+  rm -rf $CACHE_DIR
+
+  # fetch umbrella chart (parent chart containing subcharts)
+  if [[ -d "$CHART_URL" ]]; then
+    mkdir -p $CHART_DIR
+    cp -R $CHART_URL/* $CHART_DIR/
+
+    cd $CHART_DIR/charts/
+    for subchart in * ; do
+      tar xzf ${subchart}
+    done
+    rm -rf *.tgz
+  else
+    helm fetch $CHART_URL --untar --untardir $CACHE_DIR
+  fi
+
+  # move out subcharts to process separately
+  mkdir -p $CACHE_SUBCHART_DIR
+  mv $CHART_DIR/charts/* $CACHE_SUBCHART_DIR/
+  # temp hack - parent chart needs common subchart
+  mv $CACHE_SUBCHART_DIR/common $CHART_DIR/charts/
+
+  # disable dependencies
+  rm $CHART_DIR/requirements.lock
+  mv $CHART_DIR/requirements.yaml $CHART_DIR/requirements.deploy
+
+  # compute overrides for parent and all subcharts
+  COMPUTED_OVERRIDES=$CACHE_DIR/$CHART_NAME/computed-overrides.yaml
+  helm upgrade -i $RELEASE $CHART_DIR $FLAGS --dry-run --debug \
+   | sed -n '/COMPUTED VALUES:/,/HOOKS:/p' | sed '1d;$d' > $COMPUTED_OVERRIDES
+
+  # extract global overrides to apply to parent and all subcharts
+  GLOBAL_OVERRIDES=$CHART_DIR/global-overrides.yaml
+  generate_overrides $COMPUTED_OVERRIDES $GLOBAL_OVERRIDES
+
+  # upgrade/install parent chart first
+  helm upgrade -i $RELEASE $CHART_DIR --namespace $NAMESPACE -f $COMPUTED_OVERRIDES
+
+  # parse computed overrides - will use to determine if a subchart is "enabled"
+  eval $(parse_yaml $COMPUTED_OVERRIDES "computed_")
+
+  # upgrade/install each "enabled" subchart
+  cd $CACHE_SUBCHART_DIR
+  for subchart in * ; do
+    VAR="computed_${subchart}_enabled"
+    COMMAND="$"$VAR
+    eval "SUBCHART_ENABLED=$COMMAND"
+    if [[ $SUBCHART_ENABLED == "true" ]]; then
+      SUBCHART_OVERRIDES=$CACHE_SUBCHART_DIR/$subchart/subchart-overrides.yaml
+      helm upgrade -i "${RELEASE}-${subchart}" $CACHE_SUBCHART_DIR/$subchart \
+       --namespace $NAMESPACE -f $GLOBAL_OVERRIDES -f $SUBCHART_OVERRIDES
+    fi
+  done
+}
+
+if [[ $# < 2 ]]; then
+  usage
+  exit 0
+fi
+
+case "${1:-"help"}" in
+  "help")
+    usage
+    ;;
+  "--help")
+    usage
+    ;;
+  "-h")
+    usage
+    ;;
+  *)
+    deploy $1 $2 ${@:3}
+    ;;
+esac
+
+exit 0
\ No newline at end of file
diff --git a/kubernetes/helm/plugins/deploy/plugin.yaml b/kubernetes/helm/plugins/deploy/plugin.yaml
new file mode 100644 (file)
index 0000000..fc7f7d0
--- /dev/null
@@ -0,0 +1,7 @@
+name: "deploy"
+version: "1.0.0"
+usage: "install (upgrade if release exists) parent chart and subcharts as separate 
+but related releases"
+description: "install (upgrade if release exists) parent charty and all subcharts as separate 
+but related releases"
+command: "$HELM_PLUGIN_DIR/deploy.sh"
\ No newline at end of file
diff --git a/kubernetes/helm/plugins/undeploy/plugin.yaml b/kubernetes/helm/plugins/undeploy/plugin.yaml
new file mode 100644 (file)
index 0000000..02999fd
--- /dev/null
@@ -0,0 +1,7 @@
+name: "undeploy"
+version: "1.0.0"
+usage: "delete parent chart and subcharts that were deployed as separate 
+releases"
+description: "delete parent chart and subcharts that were deployed as separate 
+releases"
+command: "$HELM_PLUGIN_DIR/undeploy.sh"
\ No newline at end of file
diff --git a/kubernetes/helm/plugins/undeploy/undeploy.sh b/kubernetes/helm/plugins/undeploy/undeploy.sh
new file mode 100755 (executable)
index 0000000..02b5d34
--- /dev/null
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+usage() {
+cat << EOF
+Delete an umbrella Helm Chart, and its subcharts, that was previously deployed using 'Helm deploy'. 
+
+Example of deleting all Releases that have the prefix 'demo'.
+  $ helm undeploy demo
+
+  $ helm undeploy demo --purge
+
+Usage:
+  helm undeploy [RELEASE] [flags]
+
+Flags:
+      --purge     remove the releases from the store and make its name free for later use
+EOF
+}
+
+undeploy() {
+  RELEASE=$1
+  FLAGS=$2
+
+  array=($(helm ls -q | grep $RELEASE))
+  n=${#array[*]}
+  for (( i = n-1; i >= 0; i-- ))
+  do
+    helm del "${array[i]}" $FLAGS
+  done
+}
+
+if [[ $# < 1 ]]; then
+  echo "Error: command 'undeploy' requires a release name"
+  exit 0
+fi
+
+case "${1:-"help"}" in
+  "help")
+    usage
+    ;;
+  "--help")
+    usage
+    ;;
+  "-h")
+    usage
+    ;;
+  *)
+    undeploy $1 ${@:2}
+    ;;
+esac
+
+exit 0
\ No newline at end of file
index 897a073..edb0a78 100644 (file)
@@ -1,3 +1,9 @@
+# Copyright © 2018 Amdocs, Bell Canada
+#
+# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+#
+# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
 # Starter Helm Chart for ONAP Applications
 
 Clone the onap-app directory and rename it to the name for your new Helm Chart.
index 5cc0149..49d27b0 100644 (file)
@@ -1,3 +1,9 @@
+# Copyright © 2018 Amdocs, Bell Canada
+#
+# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+#
+# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
 This directory contains all external configuration files that
 need to be mounted into an application container.
 
index 496a15a..1342dc7 100644 (file)
@@ -1 +1,15 @@
+# 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.
+
 sampleConfigKey=sampleConfigValue
\ No newline at end of file
index 2465e03..4ca95aa 100644 (file)
@@ -1,3 +1,9 @@
+# Copyright © 2018 Amdocs, Bell Canada
+#
+# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+#
+# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 4ccc7cc..83f2ae0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -18,4 +19,4 @@ metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 9b902e8..9dbdad5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging ElasticStack
 name: log
-version: 2.0.0
+version: 3.0.0
index 5d233b4..88edfd0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging Elasticsearch
 name: log-elasticsearch
-version: 2.0.0
+version: 3.0.0
index 1e8f788..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 8bbb019..d39fc97 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 # ======================== Elasticsearch Configuration =========================
 #
 # NOTE: Elasticsearch comes with reasonable defaults for most settings.
index 0878f5c..ab908cd 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 4ccc7cc..cc34369 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -18,4 +19,4 @@ metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index c4491b9..06e1b6b 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 31230a9..fd21cdf 100644 (file)
@@ -1,3 +1,18 @@
+{{/*
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
 {{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
 kind: PersistentVolume
 apiVersion: v1
index c046f46..abab145 100644 (file)
@@ -1,3 +1,18 @@
+{{/*
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
 {{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
 kind: PersistentVolumeClaim
 apiVersion: v1
index cdc2ea8..d1fc332 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9e87b99..235c319 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 74f2c2b..14a4eb7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging Kibana
 name: log-kibana
-version: 2.0.0
+version: 3.0.0
index 1e8f788..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 5171ad4..c086cf8 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 xpack.graph.enabled: false
 #Set to false to disable X-Pack graph features.
 xpack.ml.enabled: false
index 0878f5c..f115eb6 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index fd8934b..607faf8 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 09dc88f..191f452 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index d758c99..d3a2f12 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 032b60c..d948554 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 3aab337..99f93b4 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Logging Logstash
 name: log-logstash
-version: 2.0.0
+version: 3.0.0
index 1e8f788..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 7e5cf67..d19656d 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 http.host: "0.0.0.0"
 pipeline.workers: 3
 ## Path where pipeline configurations reside
index e46d2ba..ae86385 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 input {
  beats {
 
index 0878f5c..f115eb6 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index fd8934b..607faf8 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 0811563..f54ffb3 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index cdc2ea8..d1fc332 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 51062c9..aa49460 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index acca8ef..a72a96a 100644 (file)
@@ -1,4 +1,18 @@
+# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 5bb61e2..817baa4 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e517d60..035a332 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4ab40e6..649201d 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ONAP MicroServices Bus Kube2MSB Registrator
 name: kube2msb
index 8cddd30..50d2829 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ~2.0.0
index 78361a7..7f55dcc 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 9ef85e5..7532c28 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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.
 #################################################################
index 3a1d299..7c9103a 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ONAP MicroServices Bus Consul
 name: msb-consul
index 8cddd30..50d2829 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ~2.0.0
index 2465e03..1ebb593 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index fb3a90a..86e401e 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 9a7029d..49539fe 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index b87cf85..dd66349 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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.
 #################################################################
index 4a403ba..f5a85b9 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ONAP MicroServices Bus Discovery
 name: msb-discovery
index 8cddd30..50d2829 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ~2.0.0
index 89deb42..af0b2b9 100644 (file)
@@ -1,3 +1,16 @@
+<!--# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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. -->
 <configuration scan="false" debug="true">
     <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
     <property name="p_lvl" value="%level"/>
index 2465e03..1ebb593 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 98f98fd..b047550 100644 (file)
@@ -1,7 +1,20 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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" . }}-log
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
index ad47809..4c349ef 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 9a7029d..49539fe 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index 13b1462..5af90d9 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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.
 #################################################################
index c86decb..a4cc1ff 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ONAP MicroServices Bus Internal API Gateway
 name: msb-eag
index 8cddd30..50d2829 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ~2.0.0
diff --git a/kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml b/kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml
new file mode 100644 (file)
index 0000000..680cb73
--- /dev/null
@@ -0,0 +1,40 @@
+<!--# 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. -->
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+   <!--<jmxConfigurator /> -->
+   <!--  specify the base path of the log directory -->
+   <property name="logDir" value="/var/log/onap" />
+   <!--  specify the component name -->
+   <property name="componentName" value="msb" />
+   <!-- specify the sub component name -->
+   <property name="subComponentName" value="discovery" />
+   <!-- The directories where logs are written -->
+   <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+   <property name="pattern" value="%d{&amp;quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&amp;quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+   <!--  log file names -->
+   <property name="errorLogName" value="error" />
+   <property name="metricsLogName" value="metrics" />
+   <property name="auditLogName" value="audit" />
+   <property name="debugLogName" value="debug" />
+   <property name="queueSize" value="256" />
+   <property name="maxFileSize" value="50MB" />
+   <property name="maxHistory" value="30" />
+   <property name="totalSizeCap" value="10GB" />
+   <!-- Example evaluator filter applied against console appender -->
+   <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+      <encoder>
+         <pattern>${pattern}</pattern>
+      </encoder>
+   </appender>
index 2d5d2d9..49d5e64 100644 (file)
@@ -1,3 +1,16 @@
+<!--# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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. -->
 <configuration scan="false" debug="true">
     <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
     <property name="p_lvl" value="%level"/>
index 2465e03..1ebb593 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 4df72b2..b047550 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index 956ac9a..423cb99 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 5c7d830..2055b21 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index cac5c0c..1b53149 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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.
 #################################################################
index d546bfa..c4fc919 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ONAP MicroServices Bus Internal API Gateway
 name: msb-iag
index 8cddd30..50d2829 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ~2.0.0
diff --git a/kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml b/kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml
new file mode 100644 (file)
index 0000000..680cb73
--- /dev/null
@@ -0,0 +1,40 @@
+<!--# 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. -->
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+   <!--<jmxConfigurator /> -->
+   <!--  specify the base path of the log directory -->
+   <property name="logDir" value="/var/log/onap" />
+   <!--  specify the component name -->
+   <property name="componentName" value="msb" />
+   <!-- specify the sub component name -->
+   <property name="subComponentName" value="discovery" />
+   <!-- The directories where logs are written -->
+   <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+   <property name="pattern" value="%d{&amp;quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&amp;quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+   <!--  log file names -->
+   <property name="errorLogName" value="error" />
+   <property name="metricsLogName" value="metrics" />
+   <property name="auditLogName" value="audit" />
+   <property name="debugLogName" value="debug" />
+   <property name="queueSize" value="256" />
+   <property name="maxFileSize" value="50MB" />
+   <property name="maxHistory" value="30" />
+   <property name="totalSizeCap" value="10GB" />
+   <!-- Example evaluator filter applied against console appender -->
+   <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+      <encoder>
+         <pattern>${pattern}</pattern>
+      </encoder>
+   </appender>
index 2774b58..bceefc5 100644 (file)
@@ -1,3 +1,16 @@
+<!--# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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. -->
 <configuration scan="false" debug="true">
     <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
     <property name="p_lvl" value="%level"/>
index 2465e03..1ebb593 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 4df72b2..b047550 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index 235fabc..5b9b6b7 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
index 5c7d830..2055b21 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index 885ee00..e46cd74 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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.
 #################################################################
index acca8ef..50d2829 100644 (file)
@@ -1,4 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 3377596..d590c3a 100644 (file)
@@ -1,3 +1,16 @@
+<!--# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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. -->
 <?xml version="1.0" encoding="UTF-8"?>
 <configuration debug="true" scan="true" scanPeriod="3 seconds">
    <!--<jmxConfigurator /> -->
@@ -24,4 +37,4 @@
       <encoder>
          <pattern>${pattern}</pattern>
       </encoder>
-   </appender>
\ No newline at end of file
+   </appender>
index dafba4b..03d2b10 100644 (file)
@@ -1,3 +1,16 @@
+<!--# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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. -->
 <?xml version="1.0" encoding="UTF-8"?>
 <configuration debug="true" scan="true" scanPeriod="3 seconds">
    <!--<jmxConfigurator /> -->
@@ -24,4 +37,4 @@
       <encoder>
          <pattern>${pattern}</pattern>
       </encoder>
-   </appender>
\ No newline at end of file
+   </appender>
index b0d4690..d4fb35b 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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.
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index f841859..8c89320 100644 (file)
@@ -1,3 +1,16 @@
+<!--# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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. -->
 <?xml version="1.0" encoding="UTF-8"?>
 <configuration debug="true" scan="true" scanPeriod="3 seconds">
    <!--<jmxConfigurator /> -->
@@ -24,4 +37,4 @@
       <encoder>
          <pattern>${pattern}</pattern>
       </encoder>
-   </appender>
\ No newline at end of file
+   </appender>
index 507b71d..dba46a6 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , ZTE
+#
+# 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:
index 6d5c9fb..27fc008 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 3dbbe29..17e61a3 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 3dfc80a..3a326f7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2ef26b7..378970a 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 version: 1
 disable_existing_loggers: False
 
index 8d506fb..7dd8fa5 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# # Modifications Copyright © 2018 AT&T
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
 # # you may not use this file except in compliance with the License.
@@ -19,5 +20,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log-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/log/*").AsConfig . | indent 2 }}
index 0f8335e..1c91e8a 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -61,6 +62,8 @@ spec:
        - mountPath: /opt/ocata/ocata/pub/config/log.yml
          name: ocata-logconfig
          subPath: log.yml
+       resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        ports:
@@ -79,17 +82,6 @@ spec:
          successThreshold: {{ .Values.liveness.successThreshold }}
          failureThreshold: {{ .Values.liveness.failureThreshold }}
        {{ end }}
-       resources:
-{{ toYaml .Values.resources | indent 12 }}
-        {{- if .Values.nodeSelector }}
-     nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
-     {{- end -}}
-     {{- if .Values.affinity }}
-     affinity:
-{{ toYaml .Values.affinity | indent 10 }}
-     {{- end }}
-
      # side car containers
      - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
index b01f37e..cbe426e 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# # Modifications Copyright © 2018 AT&T
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
 # # you may not use this file except in compliance with the License.
index 5011061..25b21d6 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -65,21 +66,21 @@ service:
 ingress:
   enabled: false
 
-resources: {}
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
-  #
-  # Example:
-  # Configure resource requests and limits
-  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory
-  # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      cpu: 1
+      memory: 4Gi
+    requests:
+      cpu: 10m
+      memory: 1Gi
+  large:
+    limits:
+      cpu: 2
+      memory: 8Gi
+    requests:
+      cpu: 20m
+      memory: 2Gi
index 83aa96a..4174fd5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9165464..750b8c4 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 version: 1
 disable_existing_loggers: False
 
@@ -21,4 +34,4 @@ formatters:
         format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
         mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
         datefmt: "%Y-%m-%d %H:%M:%S"
-        (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file
+        (): onaplogging.mdcformatter.MDCFormatter
index 8d506fb..0b39a5c 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
 # # you may not use this file except in compliance with the License.
@@ -19,5 +20,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log-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/log/*").AsConfig . | indent 2 }}
index 6ef2e58..b555d46 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -61,6 +62,8 @@ spec:
        - mountPath: /opt/vio/vio/pub/config/log.yml
          name: vio-logconfig
          subPath: log.yml
+       resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        ports:
@@ -91,17 +94,6 @@ spec:
          name: vio-log
        - mountPath: /usr/share/filebeat/data
          name: vio-data-filebeat
-       resources:
-{{ toYaml .Values.resources | indent 12 }}
-        {{- if .Values.nodeSelector }}
-     nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
-     {{- end -}}
-     {{- if .Values.affinity }}
-     affinity:
-{{ toYaml .Values.affinity | indent 10 }}
-     {{- end }}
-
      volumes:
      - name: vio-log
        emptyDir: {}
index e837497..b53aef4 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
 # # you may not use this file except in compliance with the License.
index a660e99..bc207ef 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -65,21 +66,21 @@ service:
 ingress:
   enabled: false
 
-resources: {}
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
-  #
-  # Example:
-  # Configure resource requests and limits
-  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory
-  # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      cpu: 1
+      memory: 4Gi
+    requests:
+      cpu: 10m
+      memory: 1Gi
+  large:
+    limits:
+      cpu: 2
+      memory: 8Gi
+    requests:
+      cpu: 20m
+      memory: 2Gi
index ef345f6..0e58b7d 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 6c1957d..e606d03 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 version: 1
 disable_existing_loggers: False
 
index 8d506fb..0b39a5c 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
 # # you may not use this file except in compliance with the License.
@@ -19,5 +20,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log-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/log/*").AsConfig . | indent 2 }}
index a48e1e1..2e89974 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -61,6 +62,8 @@ spec:
        - mountPath: /opt/windriver/titanium_cloud/pub/config/log.yml
          name: windriver-logconfig
          subPath: log.yml
+       resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        ports:
@@ -79,17 +82,6 @@ spec:
          successThreshold: {{ .Values.liveness.successThreshold }}
          failureThreshold: {{ .Values.liveness.failureThreshold }}
        {{ end }}
-       resources:
-{{ toYaml .Values.resources | indent 12 }}
-        {{- if .Values.nodeSelector }}
-     nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
-     {{- end -}}
-     {{- if .Values.affinity }}
-     affinity:
-{{ toYaml .Values.affinity | indent 10 }}
-     {{- end }}
-
      # side car containers
      - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
index 276d46f..d8c0196 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
 # # you may not use this file except in compliance with the License.
index 1286cbd..dce2343 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -65,21 +66,21 @@ liveness:
 ingress:
   enabled: false
 
-resources: {}
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
-  #
-  # Example:
-  # Configure resource requests and limits
-  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory
-  # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      cpu: 1
+      memory: 4Gi
+    requests:
+      cpu: 10m
+      memory: 1Gi
+  large:
+    limits:
+      cpu: 2
+      memory: 8Gi
+    requests:
+      cpu: 20m
+      memory: 2Gi
index ce82a2f..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index a6dd579..aa82aa7 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index f548871..6c89ff3 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 version: 1
 disable_existing_loggers: False
 
@@ -21,4 +34,4 @@ formatters:
         format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
         mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
         datefmt: "%Y-%m-%d %H:%M:%S"
-        (): onaplogging.mdcformatter.MDCFormatter
\ No newline at end of file
+        (): onaplogging.mdcformatter.MDCFormatter
index dc356a3..e2b789d 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -19,6 +20,11 @@ kind: ConfigMap
 metadata:
   name: multicloud-filebeat-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/log/filebeat/*").AsConfig . | indent 2 }}
 ---
@@ -27,6 +33,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log-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/log/framework/*").AsConfig . | indent 2 }}
 ---
@@ -35,5 +46,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-provider-plugin-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/provider-plugin.json").AsConfig . | indent 2 }}
index 5ae5fd9..5c524fb 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -52,6 +53,8 @@ spec:
          value: "{{ .Values.config.aai.username }}"
        - name: AAI_PASSWORD
          value: "{{ .Values.config.aai.password }}"
+       resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
        name: {{ include "common.name" . }}
@@ -93,17 +96,6 @@ spec:
          name: framework-log
        - mountPath: /usr/share/filebeat/data
          name: framework-data-filebeat
-       resources:
-{{ toYaml .Values.resources | indent 12 }}
-        {{- if .Values.nodeSelector }}
-     nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
-     {{- end -}}
-     {{- if .Values.affinity }}
-     affinity:
-{{ toYaml .Values.affinity | indent 10 }}
-     {{- end }}
-
      volumes:
      - name: framework-log
        emptyDir: {}
index 2b600ae..1ad3e51 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 8216962..dc04dbb 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -69,21 +70,21 @@ service:
 ingress:
   enabled: false
 
-resources: {}
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
-  #
-  # Example:
-  # Configure resource requests and limits
-  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory
-  # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      cpu: 1
+      memory: 4Gi
+    requests:
+      cpu: 10m
+      memory: 1Gi
+  large:
+    limits:
+      cpu: 2
+      memory: 8Gi
+    requests:
+      cpu: 20m
+      memory: 2Gi
index b1f298d..754939c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f639633..7a4e4eb 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 57947a6..4d3c96f 100644 (file)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, Bell Canada , Orange
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index da117f4..4645f47 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..19ea299 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ded4657..99a7128 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018  Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 0c5781c..e743297 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 57bdf34..7575061 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Orange
+# 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.
index 68beacd..405a59c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2018 Orange
+# 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.
@@ -83,7 +84,7 @@ affinity: {}
 
 # probe configuration parameters
 liveness:
-  initialDelaySeconds: 10
+  initialDelaySeconds: 120
   periodSeconds: 10
   # necessary to disable liveness probe when setting breakpoints
   # in debugger so K8s doesn't restart unresponsive container
@@ -103,21 +104,10 @@ service:
 ingress:
   enabled: false
 
-resources: {}
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
-  #
-  # Example:
-  # Configure resource requests and limits
-  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory
-  # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+resources:
+  limits:
+    cpu: 1
+    memory: 2Gi
+  requests:
+    cpu: 100m
+    memory: 1Gi
index 911a1d5..b6e450a 100644 (file)
@@ -44,6 +44,10 @@ dependencies:
     version: ~2.0.0
     repository: '@local'
     condition: consul.enabled
+  - name: contrib
+    version: ~2.0.0
+    repository: '@local'
+    condition: contrib.enabled
   - name: dcaegen2
     version: ~2.0.0
     repository: '@local'
@@ -57,7 +61,7 @@ dependencies:
     repository: '@local'
     condition: esr.enabled
   - name: log
-    version: ~2.0.0
+    version: ~3.0.0
     repository: '@local'
     condition: log.enabled
   - name: sniro-emulator
index 7a988a5..4c9e704 100644 (file)
@@ -22,6 +22,7 @@ global:
   # Change to an unused port prefix range to prevent port conflicts
   # with other instances running within the same k8s cluster
   nodePortPrefix: 302
+  nodePortPrefixExt: 304
 
   # ONAP Repository
   # Uncomment the following to enable the use of a single docker
index eba5dcf..9b56c7b 100644 (file)
@@ -22,6 +22,7 @@ global:
   # Change to an unused port prefix range to prevent port conflicts
   # with other instances running within the same k8s cluster
   nodePortPrefix: 302
+  nodePortPrefixExt: 304
 
   # ONAP Repository
   # Uncomment the following to enable the use of a single docker
@@ -77,6 +78,8 @@ cli:
   enabled: true
 consul:
   enabled: true
+contrib:
+  enabled: true
 dcaegen2:
   enabled: true
 dmaap:
@@ -107,6 +110,9 @@ portal:
   enabled: true
 robot:
   enabled: true
+  config:
+# openStackEncryptedPasswordHere should match the encrypted string used in SO and APPC and overridden per environment
+    openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
 sdc:
   enabled: true
 sdnc:
index 36d3125..8d43df7 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index a1ec5ac..a3997d9 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 01d4eec..08e67c9 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index b3622e3..1ec56d3 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2709371..95b6783 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 58d1ab6..097a44d 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 501bd99..e454d63 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 8f907c0..974fae4 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e0fec18..6d7dad9 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-docker-entry-initd
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
 {{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
 
index 63f85c6..2d52b09 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..0fa33fc 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..0f4de0c 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 1217431..7ec7f07 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index adae040..400387c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index d0e124e..7d76ae7 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 5535f90..3274040 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 37d9f0d..fd8e92a 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index fde094f..4314227 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index a6653e4..cb070a5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 1e8f788..49076a8 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index fe338a7..0b4a973 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 1648f9a..dd2c550 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 70f97db..2088e33 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4ccc7cc..7a38efa 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright (C) 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 17114d6..902914e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 58d1ab6..097a44d 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ba04759..1fcd5f6 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e74c556..3c3f98d 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 8b61021..b5ef0c8 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ebad46b..89e7842 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9f9b4db..abd2f0a 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 95033bb..066d758 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 8f907c0..974fae4 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index c161f73..70df814 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4e4c1c8..f2eed43 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -35,4 +36,4 @@ spec:
       name: {{ .Values.service.portName }}
   selector:
     app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
\ No newline at end of file
+    release: {{ .Release.Name }}
index b06a67b..b0eca78 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index ce82a2f..49076a8 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 588b936..17d5f28 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9b53975..d78777a 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4dc2793..0fb963e 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 7c8ddec..aa19dc2 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 78e63d4..f21a002 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ .Values.global.commonConfigPrefix }}-configmap
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 6ffb372..fa6b410 100755 (executable)
@@ -24,7 +24,7 @@ global:
   commonConfigPrefix: onap-oof-has
   image:
     readiness: oomk8s/readiness-check:2.0.0
-    optf_has: onap/optf-has:1.1.1
+    optf_has: onap/optf-has:1.2.1
     filebeat: docker.elastic.co/beats/filebeat:5.5.0
 
 pullPolicy: Always
index ce82a2f..49076a8 100755 (executable)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f286be4..55e8b0a 100755 (executable)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 osdfPlacementSOUsername: {{ .Values.config.osdfPlacementSOUsername }}
 osdfPlacementSOPassword: {{ .Values.config.osdfPlacementSOPassword }}
 
index ee1b365..682969a 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4ccc7cc..e73c758 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 30a313c..da7cb70 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 66a2686..b999916 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T,VMware
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index baeed47..ac1bcc0 100644 (file)
@@ -26,7 +26,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/optf-osdf:1.1.1
+image: onap/optf-osdf:1.2.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index e7c6298..2f65c87 100644 (file)
@@ -18,8 +18,8 @@ BRMSGW_JMX_PORT=9989
 COMPONENT_X_MX_MB=1024
 COMPONENT_X_MS_MB=1024
 
-REST_PAP_URL=http://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
-REST_PDP_ID=http://{{ .Values.global.pdp.nameOverride }}:{{.Values.config.pdpPort}}/pdp/
+REST_PAP_URL=https://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
+REST_PDP_ID=https://{{ .Values.global.pdp.nameOverride }}:{{.Values.config.pdpPort}}/pdp/
 
 PDP_HTTP_USER_ID=testpdp
 PDP_HTTP_PASSWORD=alpha123
index 1236176..6962f9d 100644 (file)
@@ -18,6 +18,7 @@ POLICY_HOME=/opt/app/policy
 POLICY_LOGS=/var/log/onap/policy/pdpd
 JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
 KEYSTORE_PASSWD=Pol1cy_0nap
+TRUSTSTORE_PASSWD=Pol1cy_0nap
 
 # Telemetry credentials
 
index a6c054d..c44c8f0 100644 (file)
@@ -30,12 +30,12 @@ echo "Removing the vFW Policy from PDP.."
 echo
 echo
 
-curl -v -X DELETE --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -v -k -X DELETE --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyComponent" : "PDP",
   "policyName": "com.BRMSParamvFirewall",
   "policyType": "BRMS_Param"
-}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/deletePolicy
+}' https://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/deletePolicy
 
 sleep 20
 
@@ -45,7 +45,7 @@ echo
 echo "Updating vFW Operational Policy .."
 echo
 
-curl -v -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -v -k -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "policyConfigType": "BRMS_PARAM",
   "policyName": "com.BRMSParamvFirewall",
   "policyDescription": "BRMS Param vFirewall policy",
@@ -60,7 +60,7 @@ curl -v -X PUT --header 'Content-Type: application/json' --header 'Accept: text/
       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+'${RESOURCE_ID}'%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
     }
   }
-}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/updatePolicy
+}' https://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/updatePolicy
 
 sleep 5
 
@@ -70,11 +70,11 @@ echo "Pushing the vFW Policy .."
 echo
 echo
 
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -v -k --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.BRMSParamvFirewall",
   "policyType": "BRMS_Param"
-}' http://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/pushPolicy
+}' https://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/pushPolicy
 
 sleep 20
 
@@ -95,7 +95,7 @@ echo "PDP-D amsterdam maven coordinates .."
 echo
 echo
 
-curl -vvv --silent --user @1b3rt:31nst31n -X GET http://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools  | python -m json.tool
+curl -vvv -k --silent --user @1b3rt:31nst31n -X GET https://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools  | python -m json.tool
 
 
 echo
@@ -104,4 +104,4 @@ echo "PDP-D control loop updated .."
 echo
 echo
 
-curl -v --silent --user @1b3rt:31nst31n -X GET http://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools/facts/closedloop-amsterdam/org.onap.policy.controlloop.Params  | python -m json.tool
+curl -v -k --silent --user @1b3rt:31nst31n -X GET https://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools/facts/closedloop-amsterdam/org.onap.policy.controlloop.Params  | python -m json.tool
index 8e0b882..52480e5 100644 (file)
@@ -29,8 +29,8 @@ TOMCAT_X_MX_MB=1024
 
 UEB_CLUSTER=message-router
 
-REST_PAP_URL=http://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
-REST_PDP_ID=http://${{"{{"}}FQDN{{"}}"}}:{{.Values.service.externalPort}}/pdp/
+REST_PAP_URL=https://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
+REST_PDP_ID=https://${{"{{"}}FQDN{{"}}"}}:{{.Values.service.externalPort}}/pdp/
 REST_PDP_CONFIG=/opt/app/policy/servers/pdp/bin/config
 REST_PDP_WEBAPPS=/opt/app/policy/servers/pdp/webapps
 REST_PDP_REGISTER=true
index 7f894fd..e7171c2 100644 (file)
@@ -17,7 +17,7 @@ LOGPARSER_JMX_PORT=9997
 LOGPARSER_X_MS_MB=1024
 LOGPARSER_X_MX_MB=1024
 
-SERVER=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort}}/pdp/
+SERVER=https://{{ include "common.servicename" . }}:{{.Values.service.externalPort}}/pdp/
 LOGPATH=/var/log/onap/policy/pdpx/pdp-rest.log
 PARSERLOGPATH=/opt/app/policy/servers/pdplp/bin/IntegrityMonitor.log
 
index c5dd8ca..be18e55 100644 (file)
@@ -16,6 +16,7 @@ JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
 POLICY_HOME=/opt/app/policy
 POLICY_LOGS=/var/log/onap
 KEYSTORE_PASSWD=Pol1cy_0nap
+TRUSTSTORE_PASSWD=Pol1cy_0nap
 
 JDBC_DRIVER=org.mariadb.jdbc.Driver
 JDBC_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/onap_sdk?connectTimeout=30000&socketTimeout=60000&log=true&sessionVariables=max_statement_time=30
index defae52..fc27782 100644 (file)
@@ -59,9 +59,15 @@ else
        . /opt/app/policy/etc/profile.d/env.sh
 
        # install keystore
-       #changed to use http instead of http, so keystore no longer needed
-       #cp config/policy-keystore.jks $POLICY_HOME/etc/ssl/policy-keystore
-       
+        # override the policy keystore and truststore if present
+       if [[ -f config/policy-keystore ]]; then
+               cp config/policy-keystore $POLICY_HOME/etc/ssl
+       fi
+
+       if [[ -f config/policy-truststore ]]; then
+               cp -f config/policy-truststore $[POLICY_HOME]/etc/ssl
+       fi
+
        if [[ -f config/$container-tweaks.sh ]] ; then
                # file may not be executable; running it as an
                # argument to bash avoids needing execute perms.
index d972d7c..9cf8a29 100644 (file)
@@ -91,7 +91,7 @@ REFRESH_RATE=40000
 #
 
 
-REST_PAP_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/pap/
+REST_PAP_URL=https://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/pap/
 
 #
 # Config/Action Properties location.
@@ -99,7 +99,7 @@ REST_PAP_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.extern
 
 REST_CONFIG_HOME=/opt/app/policy/servers/pap/webapps/Config/
 REST_ACTION_HOME=/opt/app/policy/servers/pap/webapps/Action/
-REST_CONFIG_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/
+REST_CONFIG_URL=https://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/
 REST_CONFIG_WEBAPPS=/opt/app/policy/servers/pap/webapps/
 
 # PAP account information
index 8590dca..9586f03 100644 (file)
@@ -28,7 +28,7 @@ TOMCAT_X_MX_MB=1024
 # pap properties
 
 PAP_PDPS=/opt/app/policy/servers/pap/bin/pdps
-PAP_URL=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
+PAP_URL=https://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
 
 PAP_INITIATE_PDP=true
 PAP_HEARTBEAT_INTERVAL=10000
@@ -39,7 +39,7 @@ REST_ADMIN_REPOSITORY=repository
 REST_ADMIN_WORKSPACE=workspace
 
 # PDP related properties
-PAP_PDP_URL=http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-0.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-1.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-2.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-3.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/
+PAP_PDP_URL=https://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-0.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;https://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-1.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;https://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-2.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;https://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-3.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/
 PAP_PDP_HTTP_USER_ID=testpdp
 PAP_PDP_HTTP_PASSWORD=alpha123
 
index 3d59d81..34186d5 100644 (file)
@@ -17,7 +17,7 @@ LOGPARSER_JMX_PORT=9996
 LOGPARSER_X_MS_MB=1024
 LOGPARSER_X_MX_MB=1024
 
-SERVER=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
+SERVER=https://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
 LOGPATH=/var/log/onap/policy/pap/pap-rest.log
 PARSERLOGPATH=/opt/app/policy/servers/paplp/bin/IntegrityMonitor.log
 
index 5172086..44f3b36 100644 (file)
@@ -26,7 +26,7 @@ wget -O cl-amsterdam-template.drl https://git.onap.org/policy/drools-application
 
 sleep 2
 
-curl -v --silent -X POST --header 'Content-Type: multipart/form-data' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -F "file=@cl-amsterdam-template.drl" -F "importParametersJson={\"serviceName\":\"ClosedLoopControlName\",\"serviceType\":\"BRMSPARAM\"}" 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/policyEngineImport' 
+curl -k -v --silent -X POST --header 'Content-Type: multipart/form-data' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -F "file=@cl-amsterdam-template.drl" -F "importParametersJson={\"serviceName\":\"ClosedLoopControlName\",\"serviceType\":\"BRMSPARAM\"}" 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/policyEngineImport' 
 
 echo "PRELOAD_POLICIES is $PRELOAD_POLICIES"
 
@@ -41,7 +41,7 @@ echo "Create BRMSParam Operational Policies"
 sleep 2
 
 echo "Create BRMSParamvFirewall Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
        "policyConfigType": "BRMS_PARAM",
        "policyName": "com.BRMSParamvFirewall",
        "policyDescription": "BRMS Param vFirewall policy",
@@ -56,12 +56,12 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
                        "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+Eace933104d443b496b8.nodes.heat.vpg%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
                }
        }
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 sleep 2
 
 echo "Create BRMSParamvDNS Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
        "policyConfigType": "BRMS_PARAM",
        "policyName": "com.BRMSParamvDNS",
        "policyDescription": "BRMS Param vDNS policy",
@@ -76,12 +76,12 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
                        "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3%0D%0A++trigger_policy%3A+unique-policy-id-1-scale-up%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-scale-up%0D%0A++++name%3A+Create+a+new+VF+Module%0D%0A++++description%3A%0D%0A++++actor%3A+SO%0D%0A++++recipe%3A+VF+Module+Create%0D%0A++++target%3A%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
                }
        }
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 sleep 2
 
 echo "Create BRMSParamVOLTE Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
        "policyConfigType": "BRMS_PARAM",
        "policyName": "com.BRMSParamVOLTE",
        "policyDescription": "BRMS Param VOLTE policy",
@@ -96,12 +96,12 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
                        "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+VFC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
                }
        }
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 sleep 2
 
 echo "Create BRMSParamvCPE Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/html' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
        "policyConfigType": "BRMS_PARAM",
        "policyName": "com.BRMSParamvCPE",
        "policyDescription": "BRMS Param vCPE policy",
@@ -116,7 +116,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
                        "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+true%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
                }
        }
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 #########################################Create Micro Service Config policies##########################################
 
@@ -125,42 +125,75 @@ echo "Create MicroService Config Policies"
 sleep 2
 
 echo "Create MicroServicevFirewall Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
        "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevFirewall\", \"description\": \"MicroService vFirewall Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"vFirewallBroadcastPackets\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 300, \"direction\": \"LESS_OR_EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ONSET\" }, { \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 700, \"direction\": \"GREATER_OR_EQUAL\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" } ] }] } } }",
        "policyConfigType": "MicroService",
        "policyName": "com.MicroServicevFirewall",
        "onapName": "DCAE"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 
 sleep 2
 
 echo "Create MicroServicevDNS Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
        "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevDNS\", \"description\": \"MicroService vDNS Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"vLoadBalancer\", \"controlLoopSchemaType\": \"VM\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": 300, \"direction\": \"GREATER_OR_EQUAL\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
        "policyConfigType": "MicroService",
        "policyName": "com.MicroServicevDNS",
        "onapName": "DCAE"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 
 sleep 2
 
 echo "Create MicroServicevCPE Policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
-       "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevCPE\", \"description\": \"MicroService vCPE Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"Measurement_vGMUX\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ABATED\" }, { \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"GREATER\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+    "configBody": "{ \"service\": \"tca_policy\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevCPE\", \"description\": \"MicroService vCPE Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.1.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"tca_policy\": { \"domain\": \"measurementsForVfScaling\", \"metricsPerEventName\": [{ \"eventName\": \"Measurement_vGMUX\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"policyName\": \"DCAE.Config_tca-hi-lo\", \"policyVersion\": \"v0.0.1\", \"thresholds\": [{ \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"EQUAL\", \"severity\": \"MAJOR\", \"closedLoopEventStatus\": \"ABATED\" }, { \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": 0, \"direction\": \"GREATER\", \"severity\": \"CRITICAL\", \"closedLoopEventStatus\": \"ONSET\" }] }] } } }",
        "policyConfigType": "MicroService",
        "policyName": "com.MicroServicevCPE",
        "onapName": "DCAE"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
+#########################################Create SDNC Naming Policies##########################################
+
+echo "Create SDNC Naming Policies"
+
+sleep 2
+
+echo "Create SDNC vFW Naming Policy"
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ 
+    "configBody": "{\"service\":\"SDNC-GenerateName\",\"version\":\"CSIT\",\"content\":{\"policy-instance-name\":\"ONAP_VFW_NAMING_TIMESTAMP\",\"naming-models\":[{\"naming-properties\":[{\"property-name\":\"AIC_CLOUD_REGION\"},{\"property-name\":\"nfRole\"},{\"property-name\":\"TIMESTAMP\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNF\",\"nfRole\":\"vFW\",\"naming-recipe\":\"AIC_CLOUD_REGION|DELIMITER|nfRole|DELIMITER|TIMESTAMP\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"ENTIRETY\",\"start-value\":\"001\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}},{\"property-name\":\"NFC_NAMING_CODE\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNFC\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|NFC_NAMING_CODE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"},{\"property-name\":\"VF_MODULE_LABEL\"},{\"property-name\":\"VF_MODULE_TYPE\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"PRECEEDING\",\"start-value\":\"01\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}}],\"naming-type\":\"VF-MODULE\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|VF_MODULE_LABEL|DELIMITER|VF_MODULE_TYPE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"}],\"naming-type\":\"KEY\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"protected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"protected_private_net_id\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"unprotected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"unprotected_private_net_id\",\"nfRole\":\"vFW\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"}]}}",
+    "policyName": "SDNC_Policy.ONAP_VFW_NAMING_TIMESTAMP",
+    "policyConfigType": "MicroService",
+    "onapName": "SDNC",
+    "riskLevel": "4",
+    "riskType": "test",
+    "guard": "false",
+    "priority": "4",
+    "description": "ONAP_VFW_NAMING_TIMESTAMP"
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+
+sleep 2
+
+echo "Create SDNC vPG Naming Policy"
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ 
+    "configBody": "{\"service\":\"SDNC-GenerateName\",\"version\":\"CSIT\",\"content\":{\"policy-instance-name\":\"ONAP_VPG_NAMING_TIMESTAMP\",\"naming-models\":[{\"naming-properties\":[{\"property-name\":\"AIC_CLOUD_REGION\"},{\"property-name\":\"nfRole\"},{\"property-name\":\"TIMESTAMP\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNF\",\"nfRole\":\"vPG\",\"naming-recipe\":\"AIC_CLOUD_REGION|DELIMITER|nfRole|DELIMITER|TIMESTAMP\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"ENTIRETY\",\"start-value\":\"001\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}},{\"property-name\":\"NFC_NAMING_CODE\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"VNFC\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|NFC_NAMING_CODE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"},{\"property-name\":\"VF_MODULE_LABEL\"},{\"property-name\":\"VF_MODULE_TYPE\"},{\"property-name\":\"SEQUENCE\",\"increment-sequence\":{\"max\":\"zzz\",\"scope\":\"PRECEEDING\",\"start-value\":\"01\",\"length\":\"3\",\"increment\":\"1\",\"sequence-type\":\"alpha-numeric\"}}],\"naming-type\":\"VF-MODULE\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|VF_MODULE_LABEL|DELIMITER|VF_MODULE_TYPE|DELIMITER|SEQUENCE\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"}],\"naming-type\":\"KEY\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"protected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"protected_private_net_id\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"},{\"naming-properties\":[{\"property-name\":\"VNF_NAME\"},{\"property-value\":\"unprotected\",\"property-name\":\"CONSTANT\"},{\"property-value\":\"_\",\"property-name\":\"DELIMITER\"}],\"naming-type\":\"unprotected_private_net_id\",\"nfRole\":\"vPG\",\"naming-recipe\":\"VNF_NAME|DELIMITER|CONSTANT\"}]}}",
+    "policyName": "SDNC_Policy.ONAP_VPG_NAMING_TIMESTAMP",
+    "policyConfigType": "MicroService",
+    "onapName": "SDNC",
+    "riskLevel": "4",
+    "riskType": "test",
+    "guard": "false",
+    "priority": "4",
+    "description": "ONAP_VPG_NAMING_TIMESTAMP"
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 #########################################Creating Decision Guard policy######################################### 
 
 sleep 2
 
 echo "Creating Decision Guard policy"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ 
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ 
        "policyClass": "Decision", 
        "policyName": "com.AllPermitGuard", 
        "policyDescription": "Testing all Permit YAML Guard Policy", 
@@ -179,18 +212,18 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
                        "guardActiveEnd": "00:00:00-05:00" 
                } 
        } 
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
 
 #########################################Push Decision policy#########################################
 
 sleep 2
 
 echo "Push Decision policy" 
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ 
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ 
   "pdpGroup": "default", 
   "policyName": "com.AllPermitGuard", 
   "policyType": "DECISION" 
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
 
 #########################################Pushing BRMS Param policies##########################################
 
@@ -199,38 +232,38 @@ echo "Pushing BRMSParam Operational policies"
 sleep 2
 
 echo "pushPolicy : PUT : com.BRMSParamvFirewall"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.BRMSParamvFirewall",
   "policyType": "BRMS_Param"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
 
 sleep 2
 
 echo "pushPolicy : PUT : com.BRMSParamvDNS"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.BRMSParamvDNS",
   "policyType": "BRMS_Param"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
 
 sleep 2
 
 echo "pushPolicy : PUT : com.BRMSParamVOLTE"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.BRMSParamVOLTE",
   "policyType": "BRMS_Param"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
 
 sleep 2
 
 echo "pushPolicy : PUT : com.BRMSParamvCPE"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.BRMSParamvCPE",
   "policyType": "BRMS_Param"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
 
 #########################################Pushing MicroService Config policies##########################################
 
@@ -239,26 +272,47 @@ echo "Pushing MicroService Config policies"
 sleep 2
 
 echo "pushPolicy : PUT : com.MicroServicevFirewall"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.MicroServicevFirewall",
   "policyType": "MicroService"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
 
 sleep 10
 
 echo "pushPolicy : PUT : com.MicroServicevDNS"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.MicroServicevDNS",
   "policyType": "MicroService"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy' 
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy' 
 
 sleep 10
 
 echo "pushPolicy : PUT : com.MicroServicevCPE"
-curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
   "pdpGroup": "default",
   "policyName": "com.MicroServicevCPE",
   "policyType": "MicroService"
-}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy' 
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy' 
+
+#########################################Pushing SDNC Naming Policies##########################################
+echo "Pushing SDNC Naming Policies"
+
+sleep 2
+
+echo "pushPolicy : PUT : SDNC_Policy.ONAP_VFW_NAMING_TIMESTAMP"
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+  "pdpGroup": "default",
+  "policyName": "SDNC_Policy.ONAP_VFW_NAMING_TIMESTAMP",
+  "policyType": "MicroService"
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy' 
+
+sleep 10
+
+echo "pushPolicy : PUT : SDNC_Policy.ONAP_VPG_NAMING_TIMESTAMP"
+curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
+  "pdpGroup": "default",
+  "policyName": "SDNC_Policy.ONAP_VPG_NAMING_TIMESTAMP",
+  "policyType": "MicroService"
+}' 'https://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy' 
index 4799f09..194ab1d 100644 (file)
@@ -26,8 +26,8 @@ server.tomcat.max-threads=200
 server.tomcat.min-spare-threads=25
 
 # AAI REST Client Configuration
-aai.host={{ .Values.config.aaiServiceName }}.{{.Release.Namespace}}
-aai.port={{ .Values.config.aaiPort }}
+aai.serviceName={{ .Values.config.aaiServiceName }}.{{.Release.Namespace}}
+aai.servicePort={{ .Values.config.aaiPort }}
 aai.username={{ .Values.config.aaiUsername }}
 aai.password={{ .Values.config.aaiPassword }}
 aai.httpProtocol={{ .Values.config.aaiHttpProtocol }}
@@ -38,8 +38,7 @@ aai.readTimeout={{ .Values.config.aaiReadTimeout }}
 http.userId={{ .Values.config.httpUserId }}
 http.password={{ .Values.config.httpPassword }}
 
-# {0} = customerId {1} = serviceType {2} = serviceInstanceId
-aai.serviceInstancePath=/aai/v11/business/customers/customer/{0}/service-subscriptions/service-subscription/{1}/service-instances/service-instance/{2}
+aai.searchNodeQuery=/aai/v11/search/nodes-query?search-node-type=service-instance&filter=service-instance-id:EQUALS:
 
 #Servlet context parameters
 server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
index 9b76b43..47ad5c3 100644 (file)
@@ -37,9 +37,9 @@ config:
   aaiPort: 8443
   aaiUsername: AAI
   aaiPassword: OBF:1gfr1ev31gg7
-  aaiHttpProtocol: http
+  aaiHttpProtocol: https
   aaiConnectionTimeout: 5000
-  aaiReadTimeout: 1000 
+  aaiReadTimeout: 1000
   # HTTP Basic Authorization credentials for Rest Service API
   httpUserId: admin
   httpPassword: OBF:1u2a1toa1w8v1tok1u30
index 05eecc6..dc885ac 100755 (executable)
@@ -1,3 +1,16 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
 server.port=9529
 server.ssl.key-store=/auth/tomcat_keystore
 server.ssl.key-store-password=onapSecret
@@ -29,7 +42,7 @@ transport.publish.type=HTTPAUTH
 transport.publish.partition=1
 transport.publish.retries=4
 
-event.header.domain=IST3S2
+event.header.domain=onap
 event.header.source-name=RO
 event.header.event-type=POA-EVENT
 event.header.entity-type=poa-entity
index 1a958ea..7a119f9 100755 (executable)
@@ -1,7 +1,21 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
+
 server.host={{ .Values.config.aaiCtxBuilderHost }}
 basicauth.username={{ .Values.config.aaiCtxBuilderUsername }}
 basicauth.password={{ .Values.config.aaiCtxBuilderPassword }}
-server.port=9530
+server.port={{ .Values.config.ctxBuilderExternalPort }}
 server.protocol=http
 trust.store.path=/auth/tomcat_keystore
 key.store.path=/auth/aai-client-cert.p12
diff --git a/kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/networkdiscovery.properties b/kubernetes/pomba/charts/pomba-contextaggregator/resources/config/builders/networkdiscovery.properties
new file mode 100755 (executable)
index 0000000..aa80aed
--- /dev/null
@@ -0,0 +1,28 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
+
+server.host={{ .Values.config.networkdiscoveryCtxBuilderHost }}
+basicauth.username={{ .Values.config.networkdiscoveryCtxBuilderUsername }}
+basicauth.password={{ .Values.config.networkdiscoveryCtxBuilderPassword }}
+server.port={{ .Values.config.ctxBuilderExternalPort }}
+server.protocol=http
+trust.store.path=/auth/tomcat_keystore
+key.store.path=/auth/aai-client-cert.p12
+key.store.password=70c87528c88dcd9f9c2558d30e817868
+key.store.type=PKCS12
+key.manager.factory.algorithm=SunX509
+security.protocol=TLS
+connection.timeout.ms=60000
+read.timeout.ms=60000
+base.uri=/ndcontextbuilder/service/context
index 413ac1a..80167d2 100755 (executable)
@@ -1,7 +1,20 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
 server.host={{ .Values.config.sdcCtxBuilderHost }}
 basicauth.username={{ .Values.config.sdcCtxBuilderUsername }}
 basicauth.password={{ .Values.config.sdcCtxBuilderPassword }}
-server.port=9532
+server.port={{ .Values.config.ctxBuilderExternalPort }}
 server.protocol=http
 trust.store.path=/auth/tomcat_keystore
 key.store.path=/auth/aai-client-cert.p12
index 60a9273..f06d335 100755 (executable)
@@ -1,7 +1,20 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
 server.host={{ .Values.config.sdncCtxBuilderHost }}
 basicauth.username={{ .Values.config.sdncCtxBuilderUsername }}
 basicauth.password={{ .Values.config.sdncCtxBuilderPassword }}
-server.port=9531
+server.port={{ .Values.config.ctxBuilderExternalPort }}
 server.protocol=http
 trust.store.path=/auth/tomcat_keystore
 key.store.path=/auth/aai-client-cert.p12
index 076a8d2..072357f 100755 (executable)
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 Amdocs
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -32,15 +32,18 @@ debugEnabled: false
 # application configuration
 config:
   aaiCtxBuilderHost: pomba-aaictxbuilder
-  aaiCtxBuilderUsername: change-me
-  aaiCtxBuilderPassword: change-me
+  aaiCtxBuilderUsername: admin
+  aaiCtxBuilderPassword: admin
   sdcCtxBuilderHost: pomba-sdcctxbuilder
-  sdcCtxBuilderUsername: change-me
-  sdcCtxBuilderPassword: change-me
+  sdcCtxBuilderUsername: admin
+  sdcCtxBuilderPassword: admin
   sdncCtxBuilderHost: pomba-sdncctxbuilder
-  sdncCtxBuilderUsername: change-me
-  sdncCtxBuilderPassword: change-me
-  
+  sdncCtxBuilderUsername: admin
+  sdncCtxBuilderPassword: admin
+  networkdiscoveryCtxBuilderHost: pomba-networkdiscoveryctxbuilder
+  networkdiscoveryCtxBuilderUsername: admin
+  networkdiscoveryCtxBuilderPassword: admin
+  ctxBuilderExternalPort: 9530
 
 # default number of instances
 replicaCount: 1
diff --git a/kubernetes/pomba/charts/pomba-data-router/.helmignore b/kubernetes/pomba/charts/pomba-data-router/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/pomba/charts/pomba-data-router/Chart.yaml b/kubernetes/pomba/charts/pomba-data-router/Chart.yaml
new file mode 100644 (file)
index 0000000..6b2857d
--- /dev/null
@@ -0,0 +1,17 @@
+# Copyright © 2018
+#
+# 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: ONAP POMBA Data-Router
+name: pomba-data-router
+version: 2.0.0
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/client-cert-onap.p12 b/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/client-cert-onap.p12
new file mode 100644 (file)
index 0000000..dbf4fca
Binary files /dev/null and b/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/client-cert-onap.p12 differ
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/data-router_policy.json b/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/data-router_policy.json
new file mode 100644 (file)
index 0000000..18659a5
--- /dev/null
@@ -0,0 +1,18 @@
+{
+  "roles": [
+    {
+      "name": "admin",
+      "functions": [
+        {
+          "name": "search", "methods": [ { "name": "GET" },{ "name": "DELETE" }, { "name": "PUT" }, { "name": "POST" } ]
+        }
+      ],
+
+      "users": [
+        {
+          "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
+        }
+      ]
+    }
+  ]
+}
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/tomcat_keystore b/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/tomcat_keystore
new file mode 100644 (file)
index 0000000..9eec841
Binary files /dev/null and b/kubernetes/pomba/charts/pomba-data-router/resources/config/auth/tomcat_keystore differ
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/config/data-router.properties b/kubernetes/pomba/charts/pomba-data-router/resources/config/data-router.properties
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/config/schemaIngest.properties b/kubernetes/pomba/charts/pomba-data-router/resources/config/schemaIngest.properties
new file mode 100644 (file)
index 0000000..946bb63
--- /dev/null
@@ -0,0 +1,24 @@
+# Copyright © 2018 Amdocs
+#
+# 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.
+
+
+# Properties for the SchemaLocationsBean
+# The AAI Schema jar will be unpacked to bundleconfig/etc
+schemaConfig=NA
+# OXM files named aai_oxm_v*.xml are unpacked here:
+nodeDir=/opt/app/data-router/bundleconfig/etc/oxm
+# DB Edge Rules are unpacked here:
+edgeDir=
+# DB Edge Property files are copied here:
+edgePropsDir=
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/conf/audit-bean.xml b/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/conf/audit-bean.xml
new file mode 100644 (file)
index 0000000..3f22a8b
--- /dev/null
@@ -0,0 +1,23 @@
+<beans xmlns="http://www.springframework.org/schema/beans"\r
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+    xsi:schemaLocation="\r
+        http://www.springframework.org/schema/beans\r
+        http://www.springframework.org/schema/beans/spring-beans.xsd">\r
+\r
+\r
+   <bean id="eventPublisher" class="org.onap.aai.event.client.DMaaPEventPublisher" >\r
+       <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:3904" />\r
+       <constructor-arg name="topic" value="POA-AUDIT-INIT" />\r
+       <constructor-arg name="username" value="" />\r
+       <constructor-arg name="password" value="" />\r
+       <constructor-arg name="maxBatchSize" value="100" />\r
+       <constructor-arg name="maxAgeMs" value="250" />\r
+       <constructor-arg name="delayBetweenBatchesMs" value="50" />\r
+       <constructor-arg name="transportType" value="HTTPAUTH" />\r
+   </bean>\r
+\r
+   <bean id="auditService" class="org.onap.aai.datarouter.service.AuditService" >\r
+       <constructor-arg ref="eventPublisher" />\r
+   </bean>\r
+\r
+</beans>\r
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/conf/poa-validation-bean.xml b/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/conf/poa-validation-bean.xml
new file mode 100644 (file)
index 0000000..c5c8d61
--- /dev/null
@@ -0,0 +1,29 @@
+<beans xmlns="http://www.springframework.org/schema/beans"\r
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+  xsi:schemaLocation="\r
+         http://www.springframework.org/schema/beans\r
+         http://www.springframework.org/schema/beans/spring-beans.xsd">\r
+\r
+  <bean id="poaPolicy" class="org.onap.aai.datarouter.policy.ServiceIntegrityValidationPolicy" init-method="startup" >\r
+        <constructor-arg name="searchCertPath" value="client-cert-onap.p12" />\r
+        <constructor-arg name="searchCertPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />\r
+        <constructor-arg name="searchCertTruststore" value="tomcat_keystore" />\r
+        <constructor-arg name="searchBaseURL" value="https://pomba-search-data.{{.Release.Namespace}}:9509" />\r
+        <constructor-arg name="endpoint" value="services/search-data-service/v1/search/indexes/" />\r
+        <constructor-arg name="validationIndexName" value="service-validations" />\r
+        <constructor-arg name="violationIndexName" value="service-violations" />\r
+  </bean>\r
+\r
+ <bean id="consumerBean" class="org.onap.aai.event.client.DMaaPEventConsumer" >\r
+       <constructor-arg name="host" value="message-router.{{.Release.Namespace}}:3904" />\r
+       <constructor-arg name="topic" value="POA-AUDIT-RESULT" />\r
+       <constructor-arg name="username" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />\r
+       <constructor-arg name="password" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10" />\r
+       <constructor-arg name="consumerGroup" value="poaConsumer" />\r
+       <constructor-arg name="consumerId" value="poaConsumer" />\r
+       <constructor-arg name="timeoutMs" value="15000" />\r
+       <constructor-arg name="messageLimit" value="1000" />\r
+       <constructor-arg name="transportType" value="HTTPAUTH" />\r
+  </bean>\r
+\r
+</beans>\r
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/routes/audit.route b/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/routes/audit.route
new file mode 100644 (file)
index 0000000..db631a8
--- /dev/null
@@ -0,0 +1,5 @@
+<route xmlns="http://camel.apache.org/schema/spring" trace="true">\r
+  <from uri="servlet:///data-router/v1/orchestration-event-service/?matchOnUriPrefix=true" />\r
+  <to uri="cxfbean:auditService" />\r
+</route>\r
+\r
diff --git a/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/routes/poaValidation.route b/kubernetes/pomba/charts/pomba-data-router/resources/dynamic/routes/poaValidation.route
new file mode 100644 (file)
index 0000000..655d436
--- /dev/null
@@ -0,0 +1,4 @@
+<route xmlns="http://camel.apache.org/schema/spring" trace="true">\r
+   <from uri="event-bus:mybus/?eventTopic=POA-AUDIT-RESULT&amp;consumer=#consumerBean" />\r
+   <to uri="bean:poaPolicy?method=process"/>\r
+</route>\r
diff --git a/kubernetes/pomba/charts/pomba-data-router/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-data-router/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..c726e48
--- /dev/null
@@ -0,0 +1,32 @@
+# Copyright © 2018 Amdocs
+#
+# 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" . }}-prop
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-dynamic
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/dynamic/routes/audit.route").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/dynamic/conf/audit-bean.xml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/dynamic/routes/poaValidation.route").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/dynamic/conf/poa-validation-bean.xml").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-data-router/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..ce62679
--- /dev/null
@@ -0,0 +1,140 @@
+# Copyright © 2018 Amdocs
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  selector:
+    matchLabels:
+      app: {{ include "common.name" . }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+      name: {{ include "common.name" . }}
+    spec:
+      initContainers:
+      - command:
+        - /bin/sh
+        - -c
+        - |
+          mkdir -p /logroot/data-router/logs
+          chmod -R 777 /logroot/data-router/logs
+          chown -R root:root /logroot
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        securityContext:
+          privileged: true
+        image: {{ .Values.global.dockerhubRepository | default .Values.dockerhubRepository }}/{{ .Values.global.busyboxImage | default .Values.busyboxImage }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: init-sysctl
+        volumeMounts:
+        - name: {{ include "common.fullname" . }}-logs
+          mountPath: /logroot/
+      containers:
+      - name: {{ include "common.name" . }}
+        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        env:
+        - name: SERVICE_BEANS
+          value: /opt/app/data-router/dynamic/conf
+        - name: CONFIG_HOME
+          value: /opt/app/data-router/config/
+        - name: KEY_STORE_PASSWORD
+          value: {{ .Values.config.keyStorePassword }}
+        - name: DYNAMIC_ROUTES
+          value: /opt/app/data-router/dynamic/routes
+        - name: KEY_MANAGER_PASSWORD
+          value: {{ .Values.config.keyManagerPassword }}
+        volumeMounts:
+        - mountPath: /etc/localtime
+          name: localtime
+          readOnly: true
+        - mountPath:  /opt/app/data-router/config/auth
+          name: {{ include "common.fullname" . }}-auth
+        - mountPath:  /opt/app/data-router/config/data-router.properties
+          subPath: data-router.properties
+          name: {{ include "common.fullname" . }}-properties
+        - mountPath:  /opt/app/data-router/config/schemaIngest.properties
+          subPath: schemaIngest.properties
+          name: {{ include "common.fullname" . }}-properties
+        - mountPath: /opt/app/data-router/dynamic/routes/audit.route
+          subPath: audit.route
+          name: {{ include "common.fullname" . }}-dynamic-route
+        - mountPath: /opt/app/data-router/dynamic/routes/poaValidation.route
+          subPath: poaValidation.route
+          name: {{ include "common.fullname" . }}-dynamic-route
+        - mountPath: /opt/app/data-router/dynamic/conf/audit-bean.xml
+          subPath: audit-bean.xml
+          name: {{ include "common.fullname" . }}-dynamic-policy
+        - mountPath: /opt/app/data-router/dynamic/conf/poa-validation-bean.xml
+          subPath: poa-validation-bean.xml
+          name: {{ include "common.fullname" . }}-dynamic-policy
+        - mountPath: /logs/
+          name: {{ include "common.fullname" . }}-logs
+        ports:
+        - containerPort: {{ .Values.service.internalPort }}
+        {{- if eq .Values.liveness.enabled true }}
+        livenessProbe:
+          tcpSocket:
+            port: {{ .Values.service.internalPort }}
+          initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+          periodSeconds: {{ .Values.liveness.periodSeconds }}
+        {{ end -}}
+        readinessProbe:
+          tcpSocket:
+            port: {{ .Values.service.internalPort }}
+          initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+          periodSeconds: {{ .Values.readiness.periodSeconds }}
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: {{ include "common.fullname" . }}-auth
+        secret:
+          secretName: {{ include "common.fullname" . }}
+      - name: {{ include "common.fullname" . }}-properties
+        configMap:
+          name: {{ include "common.fullname" . }}-prop
+          items:
+          - key: data-router.properties
+            path: data-router.properties
+          - key: schemaIngest.properties
+            path: schemaIngest.properties
+      - name: {{ include "common.fullname" . }}-dynamic-route
+        configMap:
+          name: {{ include "common.fullname" . }}-dynamic
+      - name: {{ include "common.fullname" . }}-dynamic-policy
+        configMap:
+          name: {{ include "common.fullname" . }}-dynamic
+      - name: {{ include "common.fullname" . }}-logs
+        persistentVolumeClaim:
+          claimName: {{ include "common.fullname" . }}
+      restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/pomba/charts/pomba-data-router/templates/pvc.yaml b/kubernetes/pomba/charts/pomba-data-router/templates/pvc.yaml
new file mode 100644 (file)
index 0000000..e27c331
--- /dev/null
@@ -0,0 +1,48 @@
+{{/*
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      name: {{ include "common.fullname" . }}
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
diff --git a/kubernetes/pomba/charts/pomba-data-router/templates/secret.yaml b/kubernetes/pomba/charts/pomba-data-router/templates/secret.yaml
new file mode 100644 (file)
index 0000000..aa7c938
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright © 2018 Amdocs
+#
+# 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: Secret
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/auth/*").AsSecrets . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-data-router/templates/service.yaml b/kubernetes/pomba/charts/pomba-data-router/templates/service.yaml
new file mode 100644 (file)
index 0000000..f6a1ce9
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright © 2018 Amdocs
+#
+# 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: {{ .Values.service.name }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.name }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.name }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 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.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Default values for mariadb.
+
+# Default values for data-router.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
-global: # global defaults
+
+
+# Global configuration defaults
+global:
   nodePortPrefix: 302
   persistence: {}
-  readinessRepository: oomk8s
-  ubuntuInitRepository: registry.hub.docker.com
-
 
 # application image
 repository: nexus3.onap.org:10001
-image: mariadb:10.1.11
+image: onap/data-router:1.3-STAGING-latest
 pullPolicy: Always
-ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+restartPolicy: Always
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
 
 # application configuration
 config:
-  mariadbRootPassword: password
-  # gerrit branch where the latest heat code is checked in
-  gerritBranch: 2.0.0-ONAP
-  # gerrit project where the latest heat code is checked in
-  gerritProject: http://gerrit.onap.org/r/so/docker-config.git
+  keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+  keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
 
 
 # default number of instances
@@ -46,20 +49,29 @@ affinity: {}
 
 # probe configuration parameters
 liveness:
-  initialDelaySeconds: 450
+  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: 450
+  initialDelaySeconds: 10
   periodSeconds: 10
 
-## Persist data to a persitent volume
+service:
+  name: pomba-data-router
+  type: NodePort
+  externalPort: 9502
+  internalPort: 9502
+  nodePort: 49
+
+ingress:
+  enabled: false
+
 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
@@ -73,20 +85,11 @@ persistence:
   ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
   ##   GKE, AWS & OpenStack)
   ##
-  # storageClass: "-"
+  ## storageClass: "-"
   accessMode: ReadWriteMany
   size: 2Gi
   mountPath: /dockerdata-nfs
-  mountSubPath: mso/mariadb/data
-
-service:
-  type: NodePort
-  portName: mariadb
-  internalPort: 3306
-  nodePort: 52
-
-ingress:
-  enabled: false
+  mountSubPath: pomba/data-router/logs
 
 resources: {}
   # We usually recommend not to specify default resources and to leave this as a conscious
@@ -97,8 +100,8 @@ resources: {}
   # Example:
   # Configure resource requests and limits
   # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory 
-  # Minimum memory for production is 4 CPU cores and 8GB memory 
+  # Minimum memory for development is 2 CPU cores and 4GB memory
+  # Minimum memory for production is 4 CPU cores and 8GB memory
 #resources:
 #  limits:
 #    cpu: 2
index 80b68b9..2e469d5 100644 (file)
@@ -17,7 +17,7 @@
 # The default name is elasticsearch, but you should change it to an appropriate name which describes the
 # purpose of the cluster.
 #
-cluster.name: "pomba-dashboard"
+cluster.name: POMBA_ES
 #
 # The port that other nodes in the cluster should use when communicating with this node.
 # Required for Elasticsearch's nodes running on different cluster nodes.
index c2e527d..77afee7 100644 (file)
@@ -1 +1,247 @@
-{".kibana":{"mappings":{"doc":{"dynamic":"strict","properties":{"config":{"dynamic":"true","properties":{"buildNum":{"type":"keyword"},"defaultIndex":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"telemetry:optIn":{"type":"boolean"}}},"dashboard":{"properties":{"description":{"type":"text"},"hits":{"type":"integer"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"optionsJSON":{"type":"text"},"panelsJSON":{"type":"text"},"refreshInterval":{"properties":{"display":{"type":"keyword"},"pause":{"type":"boolean"},"section":{"type":"integer"},"value":{"type":"integer"}}},"timeFrom":{"type":"keyword"},"timeRestore":{"type":"boolean"},"timeTo":{"type":"keyword"},"title":{"type":"text"},"uiStateJSON":{"type":"text"},"version":{"type":"integer"}}},"index-pattern":{"properties":{"fieldFormatMap":{"type":"text"},"fields":{"type":"text"},"intervalName":{"type":"keyword"},"notExpandable":{"type":"boolean"},"sourceFilters":{"type":"text"},"timeFieldName":{"type":"keyword"},"title":{"type":"text"}}},"search":{"properties":{"columns":{"type":"keyword"},"description":{"type":"text"},"hits":{"type":"integer"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"sort":{"type":"keyword"},"title":{"type":"text"},"version":{"type":"integer"}}},"server":{"properties":{"uuid":{"type":"keyword"}}},"timelion-sheet":{"properties":{"description":{"type":"text"},"hits":{"type":"integer"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"timelion_chart_height":{"type":"integer"},"timelion_columns":{"type":"integer"},"timelion_interval":{"type":"keyword"},"timelion_other_interval":{"type":"keyword"},"timelion_rows":{"type":"integer"},"timelion_sheet":{"type":"text"},"title":{"type":"text"},"version":{"type":"integer"}}},"type":{"type":"keyword"},"updated_at":{"type":"date"},"url":{"properties":{"accessCount":{"type":"long"},"accessDate":{"type":"date"},"createDate":{"type":"date"},"url":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":2048}}}}},"visualization":{"properties":{"description":{"type":"text"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"savedSearchId":{"type":"keyword"},"title":{"type":"text"},"uiStateJSON":{"type":"text"},"version":{"type":"integer"},"visState":{"type":"text"}}}}}}}}
+{
+  ".kibana": {
+    "mappings": {
+      "doc": {
+        "dynamic": "strict",
+        "properties": {
+          "config": {
+            "dynamic": "true",
+            "properties": {
+              "buildNum": {
+                "type": "keyword"
+              },
+              "defaultIndex": {
+                "type": "text",
+                "fields": {
+                  "keyword": {
+                    "type": "keyword",
+                    "ignore_above": 256
+                  }
+                }
+              },
+              "telemetry:optIn": {
+                "type": "boolean"
+              }
+            }
+          },
+          "dashboard": {
+            "properties": {
+              "description": {
+                "type": "text"
+              },
+              "hits": {
+                "type": "integer"
+              },
+              "kibanaSavedObjectMeta": {
+                "properties": {
+                  "searchSourceJSON": {
+                    "type": "text"
+                  }
+                }
+              },
+              "optionsJSON": {
+                "type": "text"
+              },
+              "panelsJSON": {
+                "type": "text"
+              },
+              "refreshInterval": {
+                "properties": {
+                  "display": {
+                    "type": "keyword"
+                  },
+                  "pause": {
+                    "type": "boolean"
+                  },
+                  "section": {
+                    "type": "integer"
+                  },
+                  "value": {
+                    "type": "integer"
+                  }
+                }
+              },
+              "timeFrom": {
+                "type": "keyword"
+              },
+              "timeRestore": {
+                "type": "boolean"
+              },
+              "timeTo": {
+                "type": "keyword"
+              },
+              "title": {
+                "type": "text"
+              },
+              "uiStateJSON": {
+                "type": "text"
+              },
+              "version": {
+                "type": "integer"
+              }
+            }
+          },
+          "index-pattern": {
+            "properties": {
+              "fieldFormatMap": {
+                "type": "text"
+              },
+              "fields": {
+                "type": "text"
+              },
+              "intervalName": {
+                "type": "keyword"
+              },
+              "notExpandable": {
+                "type": "boolean"
+              },
+              "sourceFilters": {
+                "type": "text"
+              },
+              "timeFieldName": {
+                "type": "keyword"
+              },
+              "title": {
+                "type": "text"
+              }
+            }
+          },
+          "search": {
+            "properties": {
+              "columns": {
+                "type": "keyword"
+              },
+              "description": {
+                "type": "text"
+              },
+              "hits": {
+                "type": "integer"
+              },
+              "kibanaSavedObjectMeta": {
+                "properties": {
+                  "searchSourceJSON": {
+                    "type": "text"
+                  }
+                }
+              },
+              "sort": {
+                "type": "keyword"
+              },
+              "title": {
+                "type": "text"
+              },
+              "version": {
+                "type": "integer"
+              }
+            }
+          },
+          "server": {
+            "properties": {
+              "uuid": {
+                "type": "keyword"
+              }
+            }
+          },
+          "timelion-sheet": {
+            "properties": {
+              "description": {
+                "type": "text"
+              },
+              "hits": {
+                "type": "integer"
+              },
+              "kibanaSavedObjectMeta": {
+                "properties": {
+                  "searchSourceJSON": {
+                    "type": "text"
+                  }
+                }
+              },
+              "timelion_chart_height": {
+                "type": "integer"
+              },
+              "timelion_columns": {
+                "type": "integer"
+              },
+              "timelion_interval": {
+                "type": "keyword"
+              },
+              "timelion_other_interval": {
+                "type": "keyword"
+              },
+              "timelion_rows": {
+                "type": "integer"
+              },
+              "timelion_sheet": {
+                "type": "text"
+              },
+              "title": {
+                "type": "text"
+              },
+              "version": {
+                "type": "integer"
+              }
+            }
+          },
+          "type": {
+            "type": "keyword"
+          },
+          "updated_at": {
+            "type": "date"
+          },
+          "url": {
+            "properties": {
+              "accessCount": {
+                "type": "long"
+              },
+              "accessDate": {
+                "type": "date"
+              },
+              "createDate": {
+                "type": "date"
+              },
+              "url": {
+                "type": "text",
+                "fields": {
+                  "keyword": {
+                    "type": "keyword",
+                    "ignore_above": 2048
+                  }
+                }
+              }
+            }
+          },
+          "visualization": {
+            "properties": {
+              "description": {
+                "type": "text"
+              },
+              "kibanaSavedObjectMeta": {
+                "properties": {
+                  "searchSourceJSON": {
+                    "type": "text"
+                  }
+                }
+              },
+              "savedSearchId": {
+                "type": "keyword"
+              },
+              "title": {
+                "type": "text"
+              },
+              "uiStateJSON": {
+                "type": "text"
+              },
+              "version": {
+                "type": "integer"
+              },
+              "visState": {
+                "type": "text"
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
index 38d7cc7..d54dbfe 100644 (file)
-{"_index":".kibana","_type":"doc","_id":"index-pattern:f4978470-8fa0-11e8-bf59-199e245501e4","_score":1,"_source":{"type":"index-pattern","updated_at":"2018-07-25T00:23:33.543Z","index-pattern":{"title":"service-viol*","timeFieldName":"violationTimestamp","fields":"[{\"name\":\"_id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_index\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_score\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_source\",\"type\":\"_source\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"category\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"message\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelInvariantId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelVersionId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"serviceInstanceId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"severity\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationRule\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violationType\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false}]"}}}
-{"_index":".kibana","_type":"doc","_id":"dashboard:Audit-Dashboard","_score":1,"_source":{"type":"dashboard","updated_at":"2018-07-25T01:08:47.377Z","dashboard":{"title":"Audit Dashboard","hits":0,"description":"","panelsJSON":"[{\"id\":\"Count-Visualization\",\"type\":\"visualization\",\"panelIndex\":1,\"size_x\":12,\"size_y\":3,\"col\":1,\"row\":1},{\"id\":\"Validation-Records\",\"type\":\"search\",\"panelIndex\":2,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":4,\"columns\":[\"validationId\",\"modelInvariantId\",\"serviceInstanceId\",\"result\"],\"sort\":[\"validationTimestamp\",\"desc\"]}]","optionsJSON":"{\"darkTheme\":false}","uiStateJSON":"{}","version":1,"timeRestore":true,"timeTo":"now","timeFrom":"now-30d","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}}}]}"}}}}
-{"_index":".kibana","_type":"doc","_id":"search:test","_score":1,"_source":{"type":"search","updated_at":"2018-07-25T01:12:03.481Z","search":{"title":"test","description":"","hits":0,"columns":["serviceInstanceId","validationId"],"sort":["validationTimestamp","desc"],"version":1,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"}}}}
-{"_index":".kibana","_type":"doc","_id":"visualization:Violations-Over-Time","_score":1,"_source":{"type":"visualization","updated_at":"2018-07-25T01:08:47.645Z","visualization":{"title":"Violations Over Time","visState":"{\"title\":\"Violations Over Time\",\"type\":\"histogram\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"scale\":\"linear\",\"mode\":\"stacked\",\"times\":[],\"addTimeMarker\":false,\"defaultYExtents\":false,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Violation Events\"}},{\"id\":\"2\",\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"violationTimestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}}],\"listeners\":{}}","uiStateJSON":"{}","description":"","savedSearchId":"Violation-Search","version":1,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}}
-{"_index":".kibana","_type":"doc","_id":"dashboard:Audit-Violations-Dashboard","_score":1,"_source":{"type":"dashboard","updated_at":"2018-07-25T01:08:47.382Z","dashboard":{"title":"Audit Violations Dashboard","hits":0,"description":"","panelsJSON":"[{\"id\":\"Violations-Over-Time\",\"type\":\"visualization\",\"panelIndex\":1,\"size_x\":12,\"size_y\":3,\"col\":1,\"row\":1},{\"id\":\"Violation-Search\",\"type\":\"search\",\"panelIndex\":2,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":4,\"columns\":[\"validationId\",\"violationId\",\"violationType\",\"message\",\"severity\"],\"sort\":[\"validationTimestamp\",\"desc\"]}]","optionsJSON":"{\"darkTheme\":false}","uiStateJSON":"{}","version":1,"timeRestore":false,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}}}]}"}}}}
-{"_index":".kibana","_type":"doc","_id":"visualization:Count-Visualization","_score":1,"_source":{"type":"visualization","updated_at":"2018-07-25T01:12:03.484Z","visualization":{"title":"Validations Over Time","visState":"{\"aggs\":[{\"id\":\"1\",\"params\":{\"customLabel\":\"Validation Events\"},\"schema\":\"metric\",\"type\":\"count\"},{\"id\":\"2\",\"params\":{\"customInterval\":\"2h\",\"customLabel\":\"\",\"extended_bounds\":{},\"field\":\"validationTimestamp\",\"interval\":\"auto\",\"min_doc_count\":1},\"schema\":\"segment\",\"type\":\"date_histogram\"}],\"listeners\":{},\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"defaultYExtents\":false,\"mode\":\"stacked\",\"scale\":\"linear\",\"setYExtents\":false,\"shareYAxis\":true,\"times\":[],\"yAxis\":{}},\"title\":\"Count Visualization\",\"type\":\"histogram\"}","uiStateJSON":"{}","description":"","version":1,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"}}}}
-{"_index":".kibana","_type":"doc","_id":"config:6.3.1","_score":1,"_source":{"type":"config","updated_at":"2018-07-25T00:25:06.654Z","config":{"buildNum":17276,"defaultIndex":"f4978470-8fa0-11e8-bf59-199e245501e4","telemetry:optIn":false}}}
-{"_index":".kibana","_type":"doc","_id":"search:Validation-Records","_score":1,"_source":{"type":"search","updated_at":"2018-07-25T01:12:03.478Z","search":{"title":"Validation Records","description":"","hits":0,"columns":["validationId","modelInvariantId","serviceInstanceId","result"],"sort":["validationTimestamp","desc"],"version":1,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"}}}}
-{"_index":".kibana","_type":"doc","_id":"search:Main-View","_score":1,"_source":{"type":"search","updated_at":"2018-07-25T01:12:03.480Z","search":{"title":"Main View","description":"","hits":0,"columns":["validationId","modelInvariantId","serviceInstanceId","result"],"sort":["validationTimestamp","desc"],"version":1,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"}}}}
-{"_index":".kibana","_type":"doc","_id":"index-pattern:2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380","_score":1,"_source":{"type":"index-pattern","updated_at":"2018-07-25T01:08:06.474Z","index-pattern":{"title":"service-validations*","timeFieldName":"validationTimestamp","fields":"[{\"name\":\"_id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_index\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_score\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_source\",\"type\":\"_source\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"modelInvariantId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelVersionId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"result\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"serviceInstanceId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.category\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.errorMessage\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.modelName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.severity\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.validationRule\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].nf-naming-code\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.max-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.min-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vnfc-list.name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vnfc-list.nfc-naming-code\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-service-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.max-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.min-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.nfc-naming-code\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf-list[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf-list[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationType\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false}]"}}}
-{"_index":".kibana","_type":"doc","_id":"search:Violation-Search","_score":1,"_source":{"type":"search","updated_at":"2018-07-25T01:12:03.486Z","search":{"title":"Violation Search","description":"","hits":0,"columns":["validationId","violationId","violationType","message","severity"],"sort":["validationTimestamp","desc"],"version":1,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"f4978470-8fa0-11e8-bf59-199e245501e4\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"}}}}
+{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "index-pattern:f4978470-8fa0-11e8-bf59-199e245501e4",
+  "_score": 1,
+  "_source": {
+    "type": "index-pattern",
+    "updated_at": "2018-07-25T00:23:33.543Z",
+    "index-pattern": {
+      "title": "service-viol*",
+      "timeFieldName": "violationTimestamp",
+      "fields": "[{\"name\":\"_id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_index\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_score\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_source\",\"type\":\"_source\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"category\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"message\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelInvariantId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelVersionId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"serviceInstanceId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"severity\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationRule\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violationType\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false}]"
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "dashboard:Audit-Dashboard",
+  "_score": 1,
+  "_source": {
+    "type": "dashboard",
+    "updated_at": "2018-07-25T01:08:47.377Z",
+    "dashboard": {
+      "title": "Audit Dashboard",
+      "hits": 0,
+      "description": "",
+      "panelsJSON": "[{\"id\":\"Count-Visualization\",\"type\":\"visualization\",\"panelIndex\":1,\"size_x\":12,\"size_y\":3,\"col\":1,\"row\":1},{\"id\":\"Validation-Records\",\"type\":\"search\",\"panelIndex\":2,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":4,\"columns\":[\"validationId\",\"modelInvariantId\",\"serviceInstanceId\",\"result\"],\"sort\":[\"validationTimestamp\",\"desc\"]}]",
+      "optionsJSON": "{\"darkTheme\":false}",
+      "uiStateJSON": "{}",
+      "version": 1,
+      "timeRestore": true,
+      "timeTo": "now",
+      "timeFrom": "now-30d",
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}}}]}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "search:test",
+  "_score": 1,
+  "_source": {
+    "type": "search",
+    "updated_at": "2018-07-25T01:12:03.481Z",
+    "search": {
+      "title": "test",
+      "description": "",
+      "hits": 0,
+      "columns": [
+        "serviceInstanceId",
+        "validationId"
+      ],
+      "sort": [
+        "validationTimestamp",
+        "desc"
+      ],
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "visualization:Violations-Over-Time",
+  "_score": 1,
+  "_source": {
+    "type": "visualization",
+    "updated_at": "2018-07-25T01:08:47.645Z",
+    "visualization": {
+      "title": "Violations Over Time",
+      "visState": "{\"title\":\"Violations Over Time\",\"type\":\"histogram\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"scale\":\"linear\",\"mode\":\"stacked\",\"times\":[],\"addTimeMarker\":false,\"defaultYExtents\":false,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"type\":\"count\",\"schema\":\"metric\",\"params\":{\"customLabel\":\"Violation Events\"}},{\"id\":\"2\",\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"violationTimestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}}],\"listeners\":{}}",
+      "uiStateJSON": "{}",
+      "description": "",
+      "savedSearchId": "Violation-Search",
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"filter\":[]}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "dashboard:Audit-Violations-Dashboard",
+  "_score": 1,
+  "_source": {
+    "type": "dashboard",
+    "updated_at": "2018-07-25T01:08:47.382Z",
+    "dashboard": {
+      "title": "Audit Violations Dashboard",
+      "hits": 0,
+      "description": "",
+      "panelsJSON": "[{\"id\":\"Violations-Over-Time\",\"type\":\"visualization\",\"panelIndex\":1,\"size_x\":12,\"size_y\":3,\"col\":1,\"row\":1},{\"id\":\"Violation-Search\",\"type\":\"search\",\"panelIndex\":2,\"size_x\":12,\"size_y\":5,\"col\":1,\"row\":4,\"columns\":[\"validationId\",\"violationId\",\"violationType\",\"message\",\"severity\"],\"sort\":[\"validationTimestamp\",\"desc\"]}]",
+      "optionsJSON": "{\"darkTheme\":false}",
+      "uiStateJSON": "{}",
+      "version": 1,
+      "timeRestore": false,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"filter\":[{\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}}}]}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "visualization:Count-Visualization",
+  "_score": 1,
+  "_source": {
+    "type": "visualization",
+    "updated_at": "2018-07-25T01:12:03.484Z",
+    "visualization": {
+      "title": "Validations Over Time",
+      "visState": "{\"aggs\":[{\"id\":\"1\",\"params\":{\"customLabel\":\"Validation Events\"},\"schema\":\"metric\",\"type\":\"count\"},{\"id\":\"2\",\"params\":{\"customInterval\":\"2h\",\"customLabel\":\"\",\"extended_bounds\":{},\"field\":\"validationTimestamp\",\"interval\":\"auto\",\"min_doc_count\":1},\"schema\":\"segment\",\"type\":\"date_histogram\"}],\"listeners\":{},\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"defaultYExtents\":false,\"mode\":\"stacked\",\"scale\":\"linear\",\"setYExtents\":false,\"shareYAxis\":true,\"times\":[],\"yAxis\":{}},\"title\":\"Count Visualization\",\"type\":\"histogram\"}",
+      "uiStateJSON": "{}",
+      "description": "",
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[]}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "config:6.3.1",
+  "_score": 1,
+  "_source": {
+    "type": "config",
+    "updated_at": "2018-07-25T00:25:06.654Z",
+    "config": {
+      "buildNum": 17276,
+      "defaultIndex": "f4978470-8fa0-11e8-bf59-199e245501e4",
+      "telemetry:optIn": false
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "search:Validation-Records",
+  "_score": 1,
+  "_source": {
+    "type": "search",
+    "updated_at": "2018-07-25T01:12:03.478Z",
+    "search": {
+      "title": "Validation Records",
+      "description": "",
+      "hits": 0,
+      "columns": [
+        "validationId",
+        "modelInvariantId",
+        "serviceInstanceId",
+        "result"
+      ],
+      "sort": [
+        "validationTimestamp",
+        "desc"
+      ],
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "search:Main-View",
+  "_score": 1,
+  "_source": {
+    "type": "search",
+    "updated_at": "2018-07-25T01:12:03.480Z",
+    "search": {
+      "title": "Main View",
+      "description": "",
+      "hits": 0,
+      "columns": [
+        "validationId",
+        "modelInvariantId",
+        "serviceInstanceId",
+        "result"
+      ],
+      "sort": [
+        "validationTimestamp",
+        "desc"
+      ],
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"
+      }
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "index-pattern:2fa1bf80-8fa7-11e8-b5d4-cb06e6cca380",
+  "_score": 1,
+  "_source": {
+    "type": "index-pattern",
+    "updated_at": "2018-07-25T01:08:06.474Z",
+    "index-pattern": {
+      "title": "service-validations*",
+      "timeFieldName": "validationTimestamp",
+      "fields": "[{\"name\":\"_id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_index\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_score\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_source\",\"type\":\"_source\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"modelInvariantId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"modelVersionId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"result\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"serviceInstanceId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"validationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.category\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.errorMessage\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.modelName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.severity\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.validationRule\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].nf-naming-code\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.max-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.min-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vf-module-list.uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vnfc-list.name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf-list[*].vnfc-list.nfc-naming-code\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-aai-vf[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-service-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.max-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.min-instances\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vf-module-list.uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.invariant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.nfc-naming-code\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdc-vf-list[*].vnfc-list.uuid\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf-list[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf-list[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf[*]-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationDetails.context-list-sdnc-vf[*]-type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"violations.violationTimestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"violations.violationType\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"client\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"requestId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false}]"
+    }
+  }
+}{
+  "_index": ".kibana",
+  "_type": "doc",
+  "_id": "search:Violation-Search",
+  "_score": 1,
+  "_source": {
+    "type": "search",
+    "updated_at": "2018-07-25T01:12:03.486Z",
+    "search": {
+      "title": "Violation Search",
+      "description": "",
+      "hits": 0,
+      "columns": [
+        "validationId",
+        "violationId",
+        "violationType",
+        "message",
+        "severity"
+      ],
+      "sort": [
+        "validationTimestamp",
+        "desc"
+      ],
+      "version": 1,
+      "kibanaSavedObjectMeta": {
+        "searchSourceJSON": "{\"index\":\"f4978470-8fa0-11e8-bf59-199e245501e4\",\"query\":{\"query\":{\"query_string\":{\"analyze_wildcard\":true,\"query\":\"*\"}},\"language\":\"lucene\"},\"filter\":[],\"highlight\":{\"pre_tags\":[\"@kibana-highlighted-field@\"],\"post_tags\":[\"@/kibana-highlighted-field@\"],\"fields\":{\"*\":{}},\"require_field_match\":false,\"fragment_size\":2147483647}}"
+      }
+    }
+  }
+}
index 0d395ec..ae01e96 100644 (file)
@@ -1 +1,192 @@
-{"service-validations":{"mappings":{"_doc":{"properties":{"modelInvariantId":{"type":"text"},"modelName":{"type":"text"},"modelVersionId":{"type":"text"},"result":{"type":"text"},"serviceInstanceId":{"type":"text"},"validationId":{"type":"text"},"validationTimestamp":{"type":"date","format":"MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"},"violations":{"type":"nested","properties":{"category":{"type":"text"},"errorMessage":{"type":"text"},"modelName":{"type":"text"},"severity":{"type":"text"},"validationRule":{"type":"text"},"violationDetails":{"properties":{"context-list-aai-vf-list[*]":{"properties":{"invariant-id":{"type":"text"},"name":{"type":"text"},"nf-naming-code":{"type":"text"},"type":{"type":"text"},"uuid":{"type":"text"},"vf-module-list":{"properties":{"invariant-id":{"type":"text"},"max-instances":{"type":"long"},"min-instances":{"type":"long"},"uuid":{"type":"text"}}},"vnfc-list":{"properties":{"name":{"type":"text"},"nfc-naming-code":{"type":"text"}}}}},"context-list-aai-vf-list[*]-name":{"type":"text"},"context-list-aai-vf-list[*]-type":{"type":"text"},"context-list-aai-vf[*]-name":{"type":"text"},"context-list-aai-vf[*]-type":{"type":"text"},"context-list-sdc-service-name":{"type":"text"},"context-list-sdc-vf-list[*]":{"properties":{"invariant-id":{"type":"text"},"name":{"type":"text"},"type":{"type":"text"},"uuid":{"type":"text"},"vf-module-list":{"properties":{"invariant-id":{"type":"text"},"max-instances":{"type":"long"},"min-instances":{"type":"long"},"uuid":{"type":"text"}}},"vnfc-list":{"properties":{"invariant-id":{"type":"text"},"name":{"type":"text"},"nfc-naming-code":{"type":"text"},"uuid":{"type":"text"}}}}},"context-list-sdnc-vf-list[*]-name":{"type":"text"},"context-list-sdnc-vf-list[*]-type":{"type":"text"},"context-list-sdnc-vf[*]-name":{"type":"text"},"context-list-sdnc-vf[*]-type":{"type":"text"}}},"violationId":{"type":"text"},"violationTimestamp":{"type":"date","format":"MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"},"violationType":{"type":"text"}}}}}}}}
+{
+  "service-validations": {
+    "mappings": {
+      "default": {
+        "properties": {
+          "modelInvariantId": {
+            "type": "text"
+          },
+          "modelName": {
+            "type": "text"
+          },
+          "modelVersionId": {
+            "type": "text"
+          },
+          "result": {
+            "type": "text"
+          },
+          "serviceInstanceId": {
+            "type": "text"
+          },
+          "validationId": {
+            "type": "text"
+          },
+          "validationTimestamp": {
+            "type": "date",
+            "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
+          },
+          "violations": {
+            "type": "nested",
+            "properties": {
+              "category": {
+                "type": "text"
+              },
+              "errorMessage": {
+                "type": "text"
+              },
+              "modelName": {
+                "type": "text"
+              },
+              "severity": {
+                "type": "text"
+              },
+              "validationRule": {
+                "type": "text"
+              },
+              "violationDetails": {
+                "properties": {
+                  "context-list-aai-vf-list[*]": {
+                    "properties": {
+                      "invariant-id": {
+                        "type": "text"
+                      },
+                      "name": {
+                        "type": "text"
+                      },
+                      "nf-naming-code": {
+                        "type": "text"
+                      },
+                      "type": {
+                        "type": "text"
+                      },
+                      "uuid": {
+                        "type": "text"
+                      },
+                      "vf-module-list": {
+                        "properties": {
+                          "invariant-id": {
+                            "type": "text"
+                          },
+                          "max-instances": {
+                            "type": "long"
+                          },
+                          "min-instances": {
+                            "type": "long"
+                          },
+                          "uuid": {
+                            "type": "text"
+                          }
+                        }
+                      },
+                      "vnfc-list": {
+                        "properties": {
+                          "name": {
+                            "type": "text"
+                          },
+                          "nfc-naming-code": {
+                            "type": "text"
+                          }
+                        }
+                      }
+                    }
+                  },
+                  "context-list-aai-vf-list[*]-name": {
+                    "type": "text"
+                  },
+                  "context-list-aai-vf-list[*]-type": {
+                    "type": "text"
+                  },
+                  "context-list-aai-vf[*]-name": {
+                    "type": "text"
+                  },
+                  "context-list-aai-vf[*]-type": {
+                    "type": "text"
+                  },
+                  "context-list-sdc-service-name": {
+                    "type": "text"
+                  },
+                  "context-list-sdc-vf-list[*]": {
+                    "properties": {
+                      "invariant-id": {
+                        "type": "text"
+                      },
+                      "name": {
+                        "type": "text"
+                      },
+                      "type": {
+                        "type": "text"
+                      },
+                      "uuid": {
+                        "type": "text"
+                      },
+                      "vf-module-list": {
+                        "properties": {
+                          "invariant-id": {
+                            "type": "text"
+                          },
+                          "max-instances": {
+                            "type": "long"
+                          },
+                          "min-instances": {
+                            "type": "long"
+                          },
+                          "uuid": {
+                            "type": "text"
+                          }
+                        }
+                      },
+                      "vnfc-list": {
+                        "properties": {
+                          "invariant-id": {
+                            "type": "text"
+                          },
+                          "name": {
+                            "type": "text"
+                          },
+                          "nfc-naming-code": {
+                            "type": "text"
+                          },
+                          "uuid": {
+                            "type": "text"
+                          }
+                        }
+                      }
+                    }
+                  },
+                  "context-list-sdnc-vf-list[*]-name": {
+                    "type": "text"
+                  },
+                  "context-list-sdnc-vf-list[*]-type": {
+                    "type": "text"
+                  },
+                  "context-list-sdnc-vf[*]-name": {
+                    "type": "text"
+                  },
+                  "context-list-sdnc-vf[*]-type": {
+                    "type": "text"
+                  }
+                }
+              },
+              "violationId": {
+                "type": "text"
+              },
+              "violationTimestamp": {
+                "type": "date",
+                "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
+              },
+              "violationType": {
+                "type": "text"
+              }
+            }
+          },
+          "client": {
+            "type": "text"
+          },
+          "requestId": {
+            "type": "text"
+          }
+        }
+      }
+    }
+  }
+}
index 893d91e..790f8c7 100644 (file)
@@ -1 +1,48 @@
-{"service-violations":{"mappings":{"_doc":{"properties":{"category":{"type":"text"},"message":{"type":"text"},"modelInvariantId":{"type":"text"},"modelVersionId":{"type":"text"},"serviceInstanceId":{"type":"text"},"severity":{"type":"text"},"validationId":{"type":"text"},"validationRule":{"type":"text"},"validationTimestamp":{"type":"date","format":"MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"},"violationId":{"type":"text"},"violationTimestamp":{"type":"date","format":"MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"},"violationType":{"type":"text"}}}}}}
+{
+  "service-violations": {
+    "mappings": {
+      "default": {
+        "properties": {
+          "category": {
+            "type": "text"
+          },
+          "message": {
+            "type": "text"
+          },
+          "modelInvariantId": {
+            "type": "text"
+          },
+          "modelVersionId": {
+            "type": "text"
+          },
+          "serviceInstanceId": {
+            "type": "text"
+          },
+          "severity": {
+            "type": "text"
+          },
+          "validationId": {
+            "type": "text"
+          },
+          "validationRule": {
+            "type": "text"
+          },
+          "validationTimestamp": {
+            "type": "date",
+            "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
+          },
+          "violationId": {
+            "type": "text"
+          },
+          "violationTimestamp": {
+            "type": "date",
+            "format": "MMM d y HH:m:s||dd-MM-yyyy HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss.SSSZZ||MM/dd/yyyy||yyyyMMdd'T'HHmmssZ"
+          },
+          "violationType": {
+            "type": "text"
+          }
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/Chart.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/Chart.yaml
new file mode 100644 (file)
index 0000000..13c1a6b
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+apiVersion: v1\r
+description: ONAP POMBA Network Discovery\r
+name: pomba-networkdiscovery\r
+version: 2.0.0\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/requirements.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/requirements.yaml
new file mode 100644 (file)
index 0000000..9bae031
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+dependencies:\r
+  - name: common\r
+    version: ~2.0.0\r
+    repository: '@local'\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/application.properties b/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/application.properties
new file mode 100644 (file)
index 0000000..c4c00d3
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 Amdocs
+#
+# 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
+
+spring.jersey.type=filter
+spring.mvc.urls=swagger,docs,prometheus,auditevents,info,heapdump,autoconfig,beans,loggers,dump,env,trace,health,configprops,mappings,metrics,webjars
+
+
+server.contextPath=/network-discovery
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+#This property is used to set the Tomcat connector attributes.developers can define multiple attributes separated by comma
+#tomcat.connector.attributes=allowTrace-true
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+#Servlet context parameters
+server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
+
+# Basic Authentication
+basicAuth.username={{ .Values.config.networkDiscoveryUserId }}
+basicAuth.password={{ .Values.config.networkDiscoveryPassword }}
+
+# A&AI Enircher REST Client Configuration
+enricher.url=https://<enricher_host_or_IP>:<port>
+enricher.connectionTimeout=5000
+enricher.readTimeout=60000
+enricher.keyStorePath=config/auth/enricher-client-cert.p12
+enricher.keyStorePassword=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
+
+enricher.types = vserver, l3-network
+enricher.type.vserver.url    = /enricher/v11/cloud-infrastructure/vservers/vserver/{0}?sot=!aai
+enricher.type.l3-network.url = /enricher/v11/network/l3-networks/l3-network/{0}?sot=!aai
+
+# Mapping from Enricher Attribute name to POMBA Attribute name in the format
+#   <Enricher Attribute Name>:<Pomba Attribute Name>;  and separated by semicolon ";"
+# for example,
+#          vserser-id:id;
+# means Attribute name "vserver-id" from Enricher will be converted to "id" in POMBA.
+enricher.attributeNameMappingList=Id:id;id:id;vserver-id:id;name:name;locked:inMaintenance; \
+            hostname:hostName;status:status;vm_state:vmState;vm-state:vmState;admin_state_up:adminState; \
+            favor.disk:flavorDisk;flavor.ephemeral:flavorEphemoral;flavor.extra_specs.hw.cpu_model:flavorHwCpuModel; \
+            flavor.extra_specs.hw.cpu_policy:flavorHwCpuPolicy;flavor.extra_specs.hw.mem_page_size:flavorHwMemPageSize; \
+            flavor.original_name:flavorOriginalName;flavor.ram:flavorRam;flavor.swap:flavorSwag;flavorvcpus:flavorVcpus; \
+            image.id:imageId;hostId:hostId;host:host;host_status:hostStatus;security_group.name:securityGroupName; \
+            serverName:serverName;metadata.myservername:otherServerName;shared:sharedNetwork;subnets:subnets; \
+            userId:userId;tenant_id:tenantId
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/auth/enricher-client-cert.p12 b/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/auth/enricher-client-cert.p12
new file mode 100644 (file)
index 0000000..12e0ae9
Binary files /dev/null and b/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/auth/enricher-client-cert.p12 differ
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/log/logback.xml b/kubernetes/pomba/charts/pomba-networkdiscovery/resources/config/log/logback.xml
new file mode 100644 (file)
index 0000000..1f00cbd
--- /dev/null
@@ -0,0 +1,30 @@
+<configuration>\r
+    <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>\r
+    <property name="p_lvl" value="%level"/>\r
+    <property name="p_log" value="%logger"/>\r
+    <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>\r
+    <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>\r
+    <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>\r
+    <!-- tabs -->\r
+    <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>\r
+    <property name="p_thr" value="%thread"/>\r
+    <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>\r
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">\r
+        <encoder>\r
+            <pattern>${pattern}</pattern>\r
+        </encoder>\r
+    </appender>\r
+    <appender name="FILE" class="ch.qos.logback.core.FileAppender">\r
+        <file>output.log</file>\r
+        <encoder>\r
+            <pattern>${pattern}</pattern>\r
+        </encoder>\r
+    </appender>\r
+    <logger level="INFO" name="org.onap.logging.ref.slf4j" additivity="false">\r
+        <appender-ref ref="STDOUT" />\r
+        <appender-ref ref="FILE" />\r
+    </logger>\r
+    <root level="INFO">\r
+        <appender-ref ref="STDOUT" />\r
+    </root>\r
+</configuration>\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..1e377b9
--- /dev/null
@@ -0,0 +1,30 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+#\r
+\r
+apiVersion: v1\r
+kind: ConfigMap\r
+metadata:\r
+  name: {{ include "common.fullname" . }}-log\r
+  namespace: {{ include "common.namespace" . }}\r
+data:\r
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}\r
+---\r
+apiVersion: v1\r
+kind: ConfigMap\r
+metadata:\r
+  name: {{ include "common.fullname" . }}-configmap\r
+  namespace: {{ include "common.namespace" . }}\r
+data:\r
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..1bd0309
--- /dev/null
@@ -0,0 +1,118 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+apiVersion: extensions/v1beta1\r
+kind: Deployment\r
+metadata:\r
+  name: {{ include "common.fullname" . }}\r
+  namespace: {{ include "common.namespace" . }}\r
+  labels:\r
+    app: {{ include "common.name" . }}\r
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}\r
+    release: {{ .Release.Name }}\r
+    heritage: {{ .Release.Service }}\r
+spec:\r
+  replicas: {{ .Values.replicaCount }}\r
+  template:\r
+    metadata:\r
+      labels:\r
+        app: {{ include "common.name" . }}\r
+        release: {{ .Release.Name }}\r
+    spec:\r
+      containers:\r
+        - name: {{ include "common.name" . }}\r
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"\r
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}\r
+          ports:\r
+          - containerPort: {{ .Values.service.internalPort }}\r
+          # disable liveness probe when breakpoints set in debugger\r
+          # so K8s doesn't restart unresponsive container\r
+          {{ if .Values.liveness.enabled }}\r
+          livenessProbe:\r
+            tcpSocket:\r
+              port: {{ .Values.service.internalPort }}\r
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}\r
+            periodSeconds: {{ .Values.liveness.periodSeconds }}\r
+          {{ end }}\r
+          readinessProbe:\r
+            tcpSocket:\r
+              port: {{ .Values.service.internalPort }}\r
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}\r
+            periodSeconds: {{ .Values.readiness.periodSeconds }}\r
+          env:\r
+          volumeMounts:\r
+          - mountPath: /etc/localtime\r
+            name: localtime\r
+            readOnly: true\r
+          - name: {{ include "common.fullname" . }}-logs\r
+            mountPath: /var/log/onap\r
+          - mountPath: /opt/app/config/logback.xml\r
+            name: {{ include "common.fullname" . }}-log-conf\r
+            subPath: logback.xml\r
+          - mountPath: /opt/app/config/application.properties\r
+            name: {{ include "common.fullname" . }}-config\r
+            subPath: application.properties\r
+            readOnly: true\r
+          - mountPath: /opt/app/config/auth/enricher-client-cert.p12\r
+            name: {{ include "common.fullname" . }}-auth-secret\r
+            subPath: enricher-client-cert.p12\r
+            readOnly: true\r
+\r
+          resources:\r
+{{ toYaml .Values.resources | indent 12 }}\r
+        {{- if .Values.nodeSelector }}\r
+        nodeSelector:\r
+{{ toYaml .Values.nodeSelector | indent 10 }}\r
+        {{- end -}}\r
+        {{- if .Values.affinity }}\r
+        affinity:\r
+{{ toYaml .Values.affinity | indent 10 }}\r
+        {{- end }}\r
+\r
+        # Filebeat sidecar container\r
+        - name: {{ include "common.name" . }}-filebeat-onap\r
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"\r
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}\r
+          volumeMounts:\r
+          - name: {{ include "common.fullname" . }}-filebeat-conf\r
+            mountPath: /usr/share/filebeat/filebeat.yml\r
+            subPath: filebeat.yml\r
+          - name: {{ include "common.fullname" . }}-data-filebeat\r
+            mountPath: /usr/share/filebeat/data\r
+          - name: {{ include "common.fullname" . }}-logs\r
+            mountPath: /var/log/onap\r
+\r
+      volumes:\r
+        - name: localtime\r
+          hostPath:\r
+            path: /etc/localtime\r
+        - name:  {{ include "common.fullname" . }}-logs\r
+          emptyDir: {}\r
+        - name: {{ include "common.fullname" . }}-log-conf\r
+          configMap:\r
+            name: {{ include "common.fullname" . }}-log\r
+        - name: {{ include "common.fullname" . }}-config\r
+          configMap:\r
+            name: {{ include "common.fullname" . }}-configmap\r
+        - name: {{ include "common.fullname" . }}-auth-secret\r
+          secret:\r
+            secretName: {{ include "common.fullname" . }}-auth\r
+        - name: {{ include "common.fullname" . }}-filebeat-conf\r
+          configMap:\r
+            name: {{ .Release.Name }}-pomba-filebeat-configmap\r
+        - name: {{ include "common.fullname" . }}-data-filebeat\r
+          emptyDir: {}\r
+\r
+      imagePullSecrets:\r
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/templates/secrets.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/templates/secrets.yaml
new file mode 100644 (file)
index 0000000..3015811
--- /dev/null
@@ -0,0 +1,26 @@
+# Copyright © 2018 Amdocs, AT&T\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+apiVersion: v1\r
+kind: Secret\r
+metadata:\r
+  name: {{ include "common.fullname" . }}-auth\r
+  namespace: {{ include "common.namespace" . }}\r
+  labels:\r
+    app: {{ include "common.name" . }}\r
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}\r
+    release: {{ .Release.Name }}\r
+    heritage: {{ .Release.Service }}\r
+data:\r
+{{ (.Files.Glob "resources/config/auth/*").AsSecrets | indent 2 }}\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/templates/service.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/templates/service.yaml
new file mode 100644 (file)
index 0000000..2b54def
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+apiVersion: v1\r
+kind: Service\r
+metadata:\r
+  name: {{ include "common.servicename" . }}\r
+  namespace: {{ include "common.namespace" . }}\r
+  labels:\r
+    app: {{ include "common.name" . }}\r
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}\r
+    release: {{ .Release.Name }}\r
+    heritage: {{ .Release.Service }}\r
+spec:\r
+  type: {{ .Values.service.type }}\r
+  ports:\r
+    {{if eq .Values.service.type "NodePort" -}}\r
+    - port: {{ .Values.service.externalPort }}\r
+      #Example internal target port if required\r
+      #targetPort: {{ .Values.service.internalPort }}\r
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}\r
+      name: {{ .Values.service.portName | default "http" }}\r
+    {{- else -}}\r
+    - port: {{ .Values.service.externalPort }}\r
+      targetPort: {{ .Values.service.internalPort }}\r
+      name: {{ .Values.service.portName | default "http" }}\r
+    {{- end}}\r
+  selector:\r
+    app: {{ include "common.name" . }}\r
+    release: {{ .Release.Name }}\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscovery/values.yaml b/kubernetes/pomba/charts/pomba-networkdiscovery/values.yaml
new file mode 100644 (file)
index 0000000..b65f3be
--- /dev/null
@@ -0,0 +1,96 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+#################################################################\r
+# Global configuration defaults.\r
+#################################################################\r
+global:\r
+  nodePortPrefix: 302\r
+  repository: nexus3.onap.org:10001\r
+\r
+#################################################################\r
+# Application configuration defaults.\r
+#################################################################\r
+# application image\r
+repository: nexus3.onap.org:10001\r
+image:  onap/network-discovery:latest\r
+pullPolicy: Always\r
+\r
+# flag to enable debugging - application support required\r
+debugEnabled: false\r
+\r
+# application configuration\r
+# Example:\r
+config:\r
+  # Network Discovery Micro Service REST Client Configuration\r
+  # Basic Authorization credentials for Network Discovery Micro Service Rest Service\r
+  networkDiscoveryUserId: admin\r
+  networkDiscoveryPassword: OBF:1u2a1toa1w8v1tok1u30\r
+\r
+# default number of instances\r
+replicaCount: 1\r
+\r
+nodeSelector: {}\r
+\r
+affinity: {}\r
+\r
+# probe configuration parameters\r
+liveness:\r
+  initialDelaySeconds: 10\r
+  periodSeconds: 10\r
+  # necessary to disable liveness probe when setting breakpoints\r
+  # in debugger so K8s doesn't restart unresponsive container\r
+  enabled: true\r
+\r
+readiness:\r
+  initialDelaySeconds: 10\r
+  periodSeconds: 10\r
+\r
+#Example service definition with external, internal and node ports.\r
+service:\r
+  # The default service name (exposed in the service.yaml) will be the same\r
+  # name as the chart. If the service name needs to be overriden (such as\r
+  # when a subchart is shared), uncomment the value below.\r
+  #name: <service-name-override>\r
+\r
+  #Services may use any combination of ports depending on the 'type' of\r
+  #service being defined.\r
+  type: ClusterIP\r
+  externalPort: 9531\r
+  internalPort: 8080\r
+#  nodePort: <replace with unused node port suffix eg. 23>\r
+  # optional port name override - default can be defined in service.yaml\r
+  #portName: http\r
+\r
+ingress:\r
+  enabled: false\r
+\r
+resources: {}\r
+  # We usually recommend not to specify default resources and to leave this as a conscious\r
+  # choice for the user. This also increases chances charts run on environments with little\r
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following\r
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.\r
+  #\r
+  # Example:\r
+  # Configure resource requests and limits\r
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/\r
+  # Minimum memory for development is 2 CPU cores and 4GB memory\r
+  # Minimum memory for production is 4 CPU cores and 8GB memory\r
+#resources:\r
+#  limits:\r
+#    cpu: 2\r
+#    memory: 4Gi\r
+#  requests:\r
+#    cpu: 2\r
+#    memory: 4Gi\r
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/Chart.yaml
new file mode 100644 (file)
index 0000000..12449e8
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs
+#
+# 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: ONAP POMBA Network Discovery Context Builder
+name: pomba-networkdiscoveryctxbuilder
+version: 2.0.0
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/requirements.yaml
new file mode 100644 (file)
index 0000000..37545fe
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs
+#
+# 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: ~2.0.0
+    repository: '@local'
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/application.properties
new file mode 100644 (file)
index 0000000..c41c487
--- /dev/null
@@ -0,0 +1,62 @@
+# Copyright © 2018 Amdocs
+#
+# 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
+
+spring.jersey.type=filter
+spring.mvc.urls=swagger,docs,prometheus,auditevents,info,heapdump,autoconfig,beans,loggers,dump,env,trace,health,configprops,mappings,metrics,webjars
+
+
+server.contextPath=/network-discovery
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+#This property is used to set the Tomcat connector attributes.developers can define multiple attributes separated by comma
+#tomcat.connector.attributes=allowTrace-true
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+
+# Network Discovery Context Builder REST Service
+networkDiscoveryCtxBuilder.httpProtocol={{ .Values.config.networkDiscoveryCtxBuilderHttpProtocol }}
+networkDiscoveryCtxBuilder.port={{ .Values.config.networkDiscoveryCtxBuilderPort }}
+# Basic Authorization credentials for Network Discovery Context Builder REST Service
+networkDiscoveryCtxBuilder.userId={{ .Values.config.networkDiscoveryCtxBuilderUserId }}
+networkDiscoveryCtxBuilder.password={{ .Values.config.networkDiscoveryCtxBuilderPassword }}
+networkDiscoveryCtxBuilder.resourceList={{ .Values.config.networkDiscoveryCtxBuilderResourceList }}
+
+# Service Decomposition REST Client Configuration
+serviceDecomposition.httpProtocol={{ .Values.config.serviceDecompositionHttpProtocol }}
+serviceDecomposition.host={{ .Values.config.serviceDecompositionServiceName }}.{{.Release.Namespace}}
+serviceDecomposition.port={{ .Values.config.serviceDecompositionPort }}
+serviceDecomposition.serviceInstancePath={{ .Values.config.serviceDecompositionInstancePath }}
+#Basic Authorization Client credentials for Service Decomposition REST service
+serviceDecomposition.userId={{ .Values.config.serviceDecompositionUserId }}
+serviceDecomposition.password={{ .Values.config.serviceDecompositionPassword }}
+
+# Network Discovery Micro Service REST Client Configuration
+
+networkDiscoveryMicroService.host={{ .Values.config.networkDiscoveryServiceName }}.{{.Release.Namespace}}
+networkDiscoveryMicroService.port={{ .Values.config.networkDiscoveryPort }}
+networkDiscoveryMicroService.httpProtocol={{ .Values.config.networkDiscoveryHttpProtocol }}
+networkDiscoveryMicroService.networkDiscoveryPath={{ .Values.config.networkDiscoveryPath }}
+# Wait for Network Discovery MicroService response in milliseconds
+networkDiscoveryMicroService.responseTimeOutInMilliseconds = {{ .Values.config.networkDiscoveryTimeOutInMilliseconds }}
+# Basic Authorization credentials for Network Discovery Micro Service Rest Service
+networkDiscoveryMicroService.userId={{ .Values.config.networkDiscoveryUserId }}
+networkDiscoveryMicroService.password={{ .Values.config.networkDiscoveryPassword }}
+
+#Servlet context parameters
+server.context_parameters.p-name=value
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/resources/config/logback.xml
new file mode 100644 (file)
index 0000000..79c5f0b
--- /dev/null
@@ -0,0 +1,236 @@
+<configuration scan="true" scanPeriod="10 seconds" debug="false">
+               <jmxConfigurator />
+               <property file="/opt/app/config/application.properties" />
+               <property name="logDirectory" value="/var/log/onap/pomba-networkdiscoveryctxbuilder" />
+               <!-- Example evaluator filter applied against console appender -->
+               <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 -->
+                               <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+                               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                                               <level>INFO</level>
+                               </filter>
+                               <encoder>
+                                               <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+                                               </pattern>
+                               </encoder>
+               </appender>
+
+               <appender name="ERROR"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                                               <level>INFO</level>
+                               </filter>
+                               <file>${logDirectory}/error.log</file>
+                               <append>true</append>
+                               <encoder>
+                                               <pattern>%date{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX", UTC}|%X{RequestId}|%.20thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDescription}|%msg%n</pattern>
+                               </encoder>
+                               <rollingPolicy
+                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                                               <maxIndex>10</maxIndex>
+                                               <FileNamePattern>${logDirectory}/error.%i.log.zip
+                                               </FileNamePattern>
+                               </rollingPolicy>
+                               <triggeringPolicy
+                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                                               <maxFileSize>10MB</maxFileSize>
+                               </triggeringPolicy>
+               </appender>
+
+               <appender name="DEBUG"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <file>${logDirectory}/debug.log</file>
+                               <append>true</append>
+                               <encoder>
+                                               <pattern>%date{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX",UTC}|%X{RequestId}|%.20thread|%.-5level|%logger{36}|%msg%n</pattern>
+                               </encoder>
+                               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                                       <fileNamePattern>${logDirectory}/debug.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
+                                       <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                                               <maxFileSize>10MB</maxFileSize>
+                                       </timeBasedFileNamingAndTriggeringPolicy>
+                                       <maxHistory>5</maxHistory>
+                               </rollingPolicy>
+               </appender>
+
+               <appender name="AUDIT"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <file>${logDirectory}/audit.log</file>
+                               <append>true</append>
+                               <encoder>
+                                               <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+                                               </pattern>
+                               </encoder>
+                               <rollingPolicy
+                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                                               <maxIndex>10</maxIndex>
+                                               <FileNamePattern>${logDirectory}/audit.%i.log.zip
+                                               </FileNamePattern>
+                               </rollingPolicy>
+                               <triggeringPolicy
+                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                                               <maxFileSize>10MB</maxFileSize>
+                               </triggeringPolicy>
+               </appender>
+               <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+                               <queueSize>256</queueSize>
+                               <appender-ref ref="AUDIT" />
+               </appender>
+
+               <appender name="METRIC"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <file>${logDirectory}/metric.log</file>
+                               <append>true</append>
+                               <encoder>
+                                               <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|
+                                                               %msg%n</pattern>
+                               </encoder>
+                               <rollingPolicy
+                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                                               <maxIndex>10</maxIndex>
+                                               <FileNamePattern>${logDirectory}/metric.%i.log.zip
+                                               </FileNamePattern>
+                               </rollingPolicy>
+                               <triggeringPolicy
+                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                                               <maxFileSize>10MB</maxFileSize>
+                               </triggeringPolicy>
+               </appender>
+               <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+                               <queueSize>256</queueSize>
+                               <appender-ref ref="METRIC" />
+               </appender>
+
+               <!-- SECURITY related loggers -->
+               <appender name="SECURITY"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <file>${logDirectory}/security.log</file>
+                               <append>true</append>
+                               <encoder>
+                                               <pattern>%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+                                               </pattern>
+                               </encoder>
+                               <rollingPolicy
+                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                                               <maxIndex>10</maxIndex>
+                                               <FileNamePattern>${logDirectory}/security.%i.log.zip
+                                               </FileNamePattern>
+                               </rollingPolicy>
+                               <triggeringPolicy
+                                               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                                               <maxFileSize>10MB</maxFileSize>
+                               </triggeringPolicy>
+               </appender>
+               <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
+                               <queueSize>256</queueSize>
+                               <appender-ref ref="SECURITY" />
+               </appender>
+
+               <!-- CLDS related loggers -->
+               <logger name="org.onap.pomba.clds" level="INFO" additivity="true">
+                               <appender-ref ref="ERROR" />
+               </logger>
+
+               <!-- CLDS related loggers -->
+               <logger name="com.att.eelf.error" level="OFF" additivity="true">
+                               <appender-ref ref="ERROR" />
+               </logger>
+               <!-- EELF related loggers -->
+               <logger name="com.att.eelf.audit" level="INFO" additivity="false">
+                               <appender-ref ref="asyncEELFAudit" />
+               </logger>
+               <logger name="com.att.eelf.metrics" level="DEBUG" additivity="false">
+                               <appender-ref ref="asyncEELFMetrics" />
+               </logger>
+               <logger name="com.att.eelf.security" level="DEBUG" additivity="false">
+                               <appender-ref ref="asyncEELFSecurity" />
+               </logger>
+
+
+               <!-- Spring related loggers -->
+               <logger name="org.springframework" level="WARN" />
+               <logger name="org.springframework.beans" level="WARN" />
+               <logger name="org.springframework.web" level="WARN" />
+               <logger name="com.blog.spring.jms" level="WARN" />
+
+               <!-- Other Loggers that may help troubleshoot -->
+               <logger name="net.sf" level="WARN" />
+               <logger name="org.apache.commons.httpclient" level="WARN" />
+               <logger name="org.apache.commons" level="WARN" />
+               <logger name="org.apache.coyote" level="WARN" />
+               <logger name="org.apache.jasper" level="WARN" />
+
+               <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
+                               May aid in troubleshooting) -->
+               <logger name="org.apache.camel" level="WARN" />
+               <logger name="org.apache.cxf" level="WARN" />
+               <logger name="org.apache.camel.processor.interceptor" level="WARN" />
+               <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
+               <logger name="org.apache.cxf.service" level="WARN" />
+               <logger name="org.restlet" level="DEBUG" />
+               <logger name="org.apache.camel.component.restlet" level="DEBUG" />
+
+               <!-- logback internals logging -->
+               <logger name="ch.qos.logback.classic" level="INFO" />
+               <logger name="ch.qos.logback.core" level="INFO" />
+
+               <!-- logback jms appenders & loggers definition starts here -->
+               <!-- logback jms appenders & loggers definition starts here -->
+               <appender name="auditLogs"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                               </filter>
+                               <file>${logDirectory}/Audit.log</file>
+                               <rollingPolicy
+                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                                               <fileNamePattern>${logDirectory}/Audit.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+                               </encoder>
+               </appender>
+               <appender name="perfLogs"
+                               class="ch.qos.logback.core.rolling.RollingFileAppender">
+                               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                               </filter>
+                               <file>${logDirectory}/Perform.log</file>
+                               <rollingPolicy
+                                               class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                                               <fileNamePattern>${logDirectory}/Perform.%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 [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+                               </encoder>
+               </appender>
+               <logger name="AuditRecord" level="INFO" additivity="FALSE">
+                               <appender-ref ref="auditLogs" />
+               </logger>
+               <logger name="AuditRecord_DirectCall" level="INFO" additivity="FALSE">
+                               <appender-ref ref="auditLogs" />
+               </logger>
+               <logger name="PerfTrackerRecord" level="INFO" additivity="FALSE">
+                               <appender-ref ref="perfLogs" />
+               </logger>
+               <!-- logback jms appenders & loggers definition ends here -->
+
+               <root level="WARN">
+                               <appender-ref ref="DEBUG" />
+                               <appender-ref ref="STDOUT" />
+               </root>
+
+</configuration>
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..7c47fea
--- /dev/null
@@ -0,0 +1,30 @@
+# Copyright © 2018 Amdocs
+#
+# 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" . }}-log
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..2b53154
--- /dev/null
@@ -0,0 +1,112 @@
+# Copyright © 2018 Amdocs
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{ 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 }}
+          env:
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: true
+          - name: {{ include "common.fullname" . }}-logs
+            mountPath: /var/log/onap
+          - mountPath: /opt/app/config/logback.xml
+            name: {{ include "common.fullname" . }}-log-conf
+            subPath: logback.xml
+          - mountPath: /opt/app/config/application.properties
+            name: {{ include "common.fullname" . }}-config
+            readOnly: true
+            subPath: application.properties
+
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+
+        # Filebeat sidecar container
+        - name: {{ include "common.name" . }}-filebeat-onap
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts:
+          - name: {{ include "common.fullname" . }}-filebeat-conf
+            mountPath: /usr/share/filebeat/filebeat.yml
+            subPath: filebeat.yml
+          - name: {{ include "common.fullname" . }}-data-filebeat
+            mountPath: /usr/share/filebeat/data
+          - name: {{ include "common.fullname" . }}-logs
+            mountPath: /var/log/onap
+
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name: {{ include "common.fullname" . }}-config
+          configMap:
+            name: {{ include "common.fullname" . }}-configmap
+        - name: {{ include "common.fullname" . }}-log-conf
+          configMap:
+            name: {{ include "common.fullname" . }}-log
+        - name: {{ include "common.fullname" . }}-filebeat-conf
+          configMap:
+            name: {{ .Release.Name }}-pomba-filebeat-configmap
+        - name: {{ include "common.fullname" . }}-data-filebeat
+          emptyDir: {}
+        - name:  {{ include "common.fullname" . }}-logs
+          emptyDir: {}
+        
+
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/templates/service.yaml
new file mode 100644 (file)
index 0000000..defd063
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright © 2018 Amdocs
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.externalPort }}
+      #Example internal target port if required
+      #targetPort: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName | default "http" }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName | default "http" }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
diff --git a/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml b/kubernetes/pomba/charts/pomba-networkdiscoveryctxbuilder/values.yaml
new file mode 100644 (file)
index 0000000..2394ef1
--- /dev/null
@@ -0,0 +1,118 @@
+# Copyright © 2018 Amdocs
+#
+# 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:
+  nodePortPrefix: 302
+  repository: nexus3.onap.org:10001
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image:  onap/pomba-network-discovery-context-builder:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+  # Network Discovery Context Builder REST Service
+  networkDiscoveryCtxBuilderHttpProtocol: http
+  networkDiscoveryCtxBuilderPort: 9530
+  networkDiscoveryCtxBuilderUserId: admin
+  networkDiscoveryCtxBuilderPassword: OBF:1u2a1toa1w8v1tok1u30
+  networkDiscoveryCtxBuilderResourceList: vnfcs,vservers,l3-networks
+
+  # Service Decomposition REST Client Configuration
+  serviceDecompositionHttpProtocol: http
+  serviceDecompositionServiceName: pomba-servicedecomposition
+  serviceDecompositionPort: 9532
+  serviceDecompositionInstancePath: /service-decomposition/service/context
+  #Basic Authorization Client credentials for Service Decomposition REST service
+  serviceDecompositionUserId: admin
+  serviceDecompositionPassword: OBF:1u2a1toa1w8v1tok1u30
+
+  # Network Discovery Micro Service REST Client Configuration
+  networkDiscoveryServiceName: pomba-networkdiscovery
+  networkDiscoveryPort: 9531
+  networkDiscoveryHttpProtocol: http
+  networkDiscoveryPath: /network-discovery/v1/network/resource
+  # Wait for Network Discovery MicroService response in milliseconds
+  networkDiscoveryTimeOutInMilliseconds: 60000
+  # Basic Authorization credentials for Network Discovery Micro Service Rest Service
+  networkDiscoveryUserId: admin
+  networkDiscoveryPassword: OBF:1u2a1toa1w8v1tok1u30
+
+# 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
+
+#Example service definition with external, internal and node ports.
+service:
+  # The default service name (exposed in the service.yaml) will be the same
+  # name as the chart. If the service name needs to be overriden (such as
+  # when a subchart is shared), uncomment the value below.
+  #name: <service-name-override>
+
+  #Services may use any combination of ports depending on the 'type' of
+  #service being defined.
+  type: ClusterIP
+  externalPort: 9530
+  internalPort: 8080
+#  nodePort: <replace with unused node port suffix eg. 23>
+  # optional port name override - default can be defined in service.yaml
+  #portName: http
+
+ingress:
+  enabled: false
+
+resources: {}
+  # We usually recommend not to specify default resources and to leave this as a conscious
+  # choice for the user. This also increases chances charts run on environments with little
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+  #
+  # Example:
+  # Configure resource requests and limits
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+  # Minimum memory for development is 2 CPU cores and 4GB memory
+  # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
index a1df99b..0d17725 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 Amdocs
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -42,7 +42,7 @@ config:
   sdcPassword: OBF:1uha1uh81w8v1ugi1ugg
   sdcConsumerId: pomba
   sdcServiceName: sdc-be
-  sdcPort: 30204
+  sdcPort: 8443
   # HTTP Basic Authorization credentials for Rest Service API
   sdcCtxBuilderUserId: admin
   sdcCtxBuilderPassword: OBF:1u2a1toa1w8v1tok1u30
diff --git a/kubernetes/pomba/charts/pomba-search-data/.helmignore b/kubernetes/pomba/charts/pomba-search-data/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/pomba/charts/pomba-search-data/Chart.yaml b/kubernetes/pomba/charts/pomba-search-data/Chart.yaml
new file mode 100644 (file)
index 0000000..ef0e5d6
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs
+#
+# 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: ONAP POMBA search-data
+name: pomba-search-data
+version: 2.0.0
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/analysis-config.json b/kubernetes/pomba/charts/pomba-search-data/resources/config/analysis-config.json
new file mode 100644 (file)
index 0000000..0927d98
--- /dev/null
@@ -0,0 +1,31 @@
+[{
+               "name": "whitespace_analyzer",
+               "description": "A standard whitespace analyzer.",
+               "behaviours": [
+                       "Tokenize the text using white space characters as delimeters.",
+                       "Convert all characters to lower case.",
+                       "Convert all alphanumeric and symbolic Unicode characters above the first 127 ASCII characters into their ASCII equivalents."
+               ],
+               "tokenizer": "whitespace",
+               "filters": [
+                       "lowercase",
+                       "asciifolding"
+               ]
+       },
+       {
+               "name": "ngram_analyzer",
+               "description": "An analyzer which performs ngram filtering on the data stream.",
+               "behaviours": [
+                       "Tokenize the text using white space characters as delimeters.",
+                       "Convert all characters to lower case.",
+                       "Convert all alphanumeric and symbolic Unicode characters above the first 127 ASCII characters into their ASCII equivalents.",
+                       "Apply ngram filtering using the following values for minimum and maximum size in codepoints of a single n-gram: minimum = 1, maximum = 2."
+               ],
+               "tokenizer": "whitespace",
+               "filters": [
+                       "lowercase",
+                       "asciifolding",
+                       "ngram_filter"
+               ]
+       }
+]
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/auth/search_policy.json b/kubernetes/pomba/charts/pomba-search-data/resources/config/auth/search_policy.json
new file mode 100644 (file)
index 0000000..00a6de5
--- /dev/null
@@ -0,0 +1,24 @@
+{
+  "roles": [{
+    "name": "admin",
+    "functions": [{
+      "name": "search",
+      "methods": [{
+          "name": "GET"
+        },
+        {
+          "name": "DELETE"
+        },
+        {
+          "name": "PUT"
+        },
+        {
+          "name": "POST"
+        }
+      ]
+    }],
+    "users": [{
+      "username": "CN=ONAP, OU=ONAP, O=ONAP, L=Ottawa, ST=Ontario, C=CA"
+    }]
+  }]
+}
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/auth/tomcat_keystore b/kubernetes/pomba/charts/pomba-search-data/resources/config/auth/tomcat_keystore
new file mode 100644 (file)
index 0000000..9eec841
Binary files /dev/null and b/kubernetes/pomba/charts/pomba-search-data/resources/config/auth/tomcat_keystore differ
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/dynamic-custom-template.json b/kubernetes/pomba/charts/pomba-search-data/resources/config/dynamic-custom-template.json
new file mode 100644 (file)
index 0000000..0bd8686
--- /dev/null
@@ -0,0 +1,10 @@
+"dynamic_templates": [{
+    "strings": {
+        "match_mapping_type": "string",
+        "match": "*",
+        "mapping": {
+            "type": "text",
+            "fielddata": true
+        }
+    }
+}],
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/elastic-search.properties b/kubernetes/pomba/charts/pomba-search-data/resources/config/elastic-search.properties
new file mode 100644 (file)
index 0000000..3048e60
--- /dev/null
@@ -0,0 +1,5 @@
+# ElasticSearch Configuration
+
+es.cluster-name=POMBA_ES
+es.ip-address=pomba-es.{{.Release.Namespace}}
+es.http-port={{.Values.config.elasticsearchHttpPort}}
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json b/kubernetes/pomba/charts/pomba-search-data/resources/config/es-payload-translation.json
new file mode 100644 (file)
index 0000000..de8bacf
--- /dev/null
@@ -0,0 +1,19 @@
+{
+  "attr-translations": [{
+      "from": "\"type\":\"string\",\"index\":\"analyzed\"",
+      "to": "\"type\":\"text\",\"index\":\"true\""
+    },
+    {
+      "from": "\"type\":\"string\",\"index\":\"not_analyzed\"",
+      "to": "\"type\":\"keyword\",\"index\":\"true\""
+    },
+    {
+      "from": "\"type\":\"string\"",
+      "to": "\"type\":\"text\""
+    },
+    {
+      "from": "searchable",
+      "to": "index"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/filter-config.json b/kubernetes/pomba/charts/pomba-search-data/resources/config/filter-config.json
new file mode 100644 (file)
index 0000000..5f9120e
--- /dev/null
@@ -0,0 +1,5 @@
+[{
+       "name": "ngram_filter",
+       "description": "Custom NGram Filter.",
+       "configuration": " \"type\": \"nGram\", \"min_gram\": 1, \"max_gram\": 50, \"token_chars\": [ \"letter\", \"digit\", \"punctuation\", \"symbol\" ]"
+}]
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-search-data/resources/config/log/logback.xml b/kubernetes/pomba/charts/pomba-search-data/resources/config/log/logback.xml
new file mode 100644 (file)
index 0000000..bfca544
--- /dev/null
@@ -0,0 +1,169 @@
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
+        <!--<jmxConfigurator /> -->
+        <!-- directory path for all other type logs -->
+
+        <property name="logDir" value="/var/log/onap" />
+
+
+        <!--  specify the component name
+                       <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC"  -->
+        <property name="componentName" value="AAI-SDB"></property>
+
+        <!--  default eelf log file names -->
+        <property name="generalLogName" value="error" />
+        <property name="metricsLogName" value="metrics" />
+        <property name="auditLogName" value="audit" />
+        <property name="debugLogName" value="debug" />
+
+        <property name="errorLogPattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{RequestId}|%thread|SearchDataService|%mdc{PartnerName}|%logger||%.-5level|%msg%n" />
+        <property name="auditMetricPattern" value="%m%n" />
+
+        <property name="logDirectory" value="${logDir}/${componentName}" />
+
+        <!-- Example evaluator filter applied against console appender -->
+        <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+                <encoder>
+                        <pattern>${errorLogPattern}</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>
+                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                        <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip
+                        </fileNamePattern>
+                        <maxHistory>60</maxHistory>
+                </rollingPolicy>
+                <encoder>
+                        <pattern>${errorLogPattern}</pattern>
+                </encoder>
+        </appender>
+        <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+                <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+                <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+                        <level>INFO</level>
+                </filter>
+                <queueSize>256</queueSize>
+                <appender-ref ref="EELF" />
+        </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.TimeBasedRollingPolicy">
+                        <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip
+                        </fileNamePattern>
+                        <maxHistory>60</maxHistory>
+                </rollingPolicy>
+                <encoder>
+                        <pattern>${auditMetricPattern}</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.TimeBasedRollingPolicy">
+                        <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip
+                        </fileNamePattern>
+                        <maxHistory>60</maxHistory>
+                </rollingPolicy>
+                <encoder>
+                        <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+                                              %msg%n"</pattern> -->
+                        <pattern>${auditMetricPattern}</pattern>
+                </encoder>
+        </appender>
+
+
+        <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+                <queueSize>256</queueSize>
+                <appender-ref ref="EELFMetrics"/>
+        </appender>
+
+        <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
+                <file>${logDirectory}/${debugLogName}.log</file>
+                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                        <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip
+                        </fileNamePattern>
+                        <maxHistory>60</maxHistory>
+                </rollingPolicy>
+                <encoder>
+                        <pattern>${errorLogPattern}</pattern>
+                </encoder>
+        </appender>
+
+        <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+                <queueSize>256</queueSize>
+                <appender-ref ref="EELFDebug" />
+                <includeCallerData>false</includeCallerData>
+        </appender>
+
+
+        <!-- ============================================================================ -->
+        <!--  EELF loggers -->
+        <!-- ============================================================================ -->
+        <logger name="com.att.eelf" level="info" additivity="false">
+                <appender-ref ref="asyncEELF" />
+                <appender-ref ref="asyncEELFDebug" />
+        </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>
+
+        <!-- Spring related loggers -->
+        <logger name="org.springframework" level="WARN" />
+        <logger name="org.springframework.beans" level="WARN" />
+        <logger name="org.springframework.web" level="WARN" />
+        <logger name="com.blog.spring.jms" level="WARN" />
+
+        <!-- SearchDB loggers -->
+        <logger name="org.openecomp.sa" level="INFO" />
+
+        <!-- Other Loggers that may help troubleshoot -->
+        <logger name="net.sf" level="WARN" />
+        <logger name="org.apache.commons.httpclient" level="WARN" />
+        <logger name="org.apache.commons" level="WARN" />
+        <logger name="org.apache.coyote" level="WARN" />
+        <logger name="org.apache.jasper" level="WARN" />
+
+        <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
+                      May aid in troubleshooting) -->
+        <logger name="org.apache.camel" level="WARN" />
+        <logger name="org.apache.cxf" level="WARN" />
+        <logger name="org.apache.camel.processor.interceptor" level="WARN" />
+        <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
+        <logger name="org.apache.cxf.service" level="WARN" />
+        <logger name="org.restlet" level="WARN" />
+        <logger name="org.apache.camel.component.restlet" level="WARN" />
+
+        <!-- logback internals logging -->
+        <logger name="ch.qos.logback.classic" level="WARN" />
+        <logger name="ch.qos.logback.core" level="WARN" />
+
+        <root>
+                <appender-ref ref="asyncEELF" />
+                <!-- <appender-ref ref="asyncEELFDebug" /> -->
+        </root>
+
+</configuration>
diff --git a/kubernetes/pomba/charts/pomba-search-data/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-search-data/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..0715f0d
--- /dev/null
@@ -0,0 +1,15 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-service-log
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-search-data/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-search-data/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..c0e2568
--- /dev/null
@@ -0,0 +1,143 @@
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  selector:
+    matchLabels:
+      app: {{ include "common.name" . }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+      name: {{ include "common.name" . }}
+    spec:
+      containers:
+      - name: {{ include "common.name" . }}
+        image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        env:
+        - name: CONFIG_HOME
+          value: /opt/app/search-data-service/config/
+        - name: KEY_STORE_PASSWORD
+          value: {{ .Values.config.keyStorePassword }}
+        - name: KEY_MANAGER_PASSWORD
+          value: {{ .Values.config.keyManagerPassword }}
+        volumeMounts:
+        - mountPath: /etc/localtime
+          name: localtime
+          readOnly: true
+        - mountPath: /opt/app/search-data-service/config/filter-config.json
+          subPath: filter-config.json
+          name: {{ include "common.fullname" . }}-service-config
+        - mountPath: /opt/app/search-data-service/config/elastic-search.properties
+          subPath: elastic-search.properties
+          name: {{ include "common.fullname" . }}-service-config
+        - mountPath: /opt/app/search-data-service/config/analysis-config.json
+          subPath: analysis-config.json
+          name: {{ include "common.fullname" . }}-service-config
+        - mountPath: /opt/app/search-data-service/config/es-payload-translation.json
+          subPath: es-payload-translation.json
+          name: {{ include "common.fullname" . }}-service-config
+        - mountPath: /opt/app/search-data-service/config/dynamic-custom-template.json
+          subPath: dynamic-custom-template.json
+          name: {{ include "common.fullname" . }}-service-config
+        - mountPath: /opt/app/search-data-service/config/auth/tomcat_keystore
+          subPath: tomcat_keystore
+          name: {{ include "common.fullname" . }}-service-auth-config
+        - mountPath: /opt/app/search-data-service/config/auth/search_policy.json
+          subPath: search_policy.json
+          name: {{ include "common.fullname" . }}-search-policy-config
+        - mountPath: /var/log/onap
+          name: {{ include "common.fullname" . }}-service-logs
+        - mountPath: /opt/app/search-data-service/bundleconfig/etc/logback.xml
+          name: {{ include "common.fullname" . }}-service-log-conf
+          subPath: logback.xml
+        ports:
+        - containerPort: {{ .Values.service.internalPort }}
+        # disable liveness probe when breakpoints set in debugger
+        # so K8s doesn't restart unresponsive container
+        {{- if eq .Values.liveness.enabled true }}
+        livenessProbe:
+          tcpSocket:
+            port: {{ .Values.service.internalPort }}
+          initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+          periodSeconds: {{ .Values.liveness.periodSeconds }}
+        {{ end -}}
+        readinessProbe:
+          tcpSocket:
+            port: {{ .Values.service.internalPort }}
+          initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+          periodSeconds: {{ .Values.readiness.periodSeconds }}
+        resources:
+{{ toYaml .Values.resources | indent 10 }}
+      {{- if .Values.nodeSelector }}
+      nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+      {{- end -}}
+      {{- if .Values.affinity }}
+      affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+      {{- end }}
+
+      # side car containers
+      - name: filebeat-onap
+        image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        volumeMounts:
+        - mountPath: /usr/share/filebeat/filebeat.yml
+          subPath: filebeat.yml
+          name: filebeat-conf
+        - mountPath: /var/log/onap
+          name: {{ include "common.fullname" . }}-service-logs
+        - mountPath: /usr/share/filebeat/data
+          name: {{ include "common.fullname" . }}-service-filebeat
+
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: {{ include "common.fullname" . }}-service-config
+        configMap:
+          name: {{ include "common.fullname" . }}
+      - name: {{ include "common.fullname" . }}-service-auth-config
+        secret:
+          secretName: {{ include "common.fullname" . }}-keystone
+      - name: {{ include "common.fullname" . }}-search-policy-config
+        secret:
+          secretName: {{ include "common.fullname" . }}-policy
+      - name: filebeat-conf
+        configMap:
+          name: {{ .Release.Name }}-pomba-filebeat-configmap
+      - name: {{ include "common.fullname" . }}-service-logs
+        emptyDir: {}
+      - name: {{ include "common.fullname" . }}-service-filebeat
+        emptyDir: {}
+      - name: {{ include "common.fullname" . }}-service-log-conf
+        configMap:
+         name: {{ include "common.fullname" . }}-service-log
+      restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/pomba/charts/pomba-search-data/templates/secret.yaml b/kubernetes/pomba/charts/pomba-search-data/templates/secret.yaml
new file mode 100644 (file)
index 0000000..33b058f
--- /dev/null
@@ -0,0 +1,16 @@
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-keystone
+  namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/auth/tomcat_keystore").AsSecrets . | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-policy
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/auth/search_policy.json").AsSecrets . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-search-data/templates/service.yaml b/kubernetes/pomba/charts/pomba-search-data/templates/service.yaml
new file mode 100644 (file)
index 0000000..a30bac1
--- /dev/null
@@ -0,0 +1,24 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+  {{if eq .Values.service.type "NodePort" -}}
+  - port: {{ .Values.service.internalPort }}
+    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+    name: {{ .Values.service.portName }}
+  {{- else -}}
+  - port: {{ .Values.service.internalPort }}
+    name: {{ .Values.service.portName }}
+  {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
@@ -1,17 +1,23 @@
-# Default values for hbase.
+# Default values for search-data.
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
 global: # global defaults
   nodePortPrefix: 302
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.0
 
 
 # application image
-dockerhubRepository: registry.hub.docker.com
-image: aaionap/hbase:1.2.0
+repository: nexus3.onap.org:10001
+image: onap/search-data-service:1.3-STAGING-latest
 pullPolicy: Always
+restartPolicy: Always
 
 # application configuration
-config: {}
+config:
+  elasticsearchHttpPort: 9200
+  keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+  keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
 
 
 # default number of instances
@@ -35,42 +41,12 @@ readiness:
 
 service:
   type: ClusterIP
-  name: aai-hbase
-  internalPort: 2181
-  internalPort2: 8080
-  internalPort3: 8085
-  internalPort4: 9090
-  internalPort5: 16000
-  internalPort6: 16010
-  internalPort7: 16201
-
+  portName: pomba-search-data
+  internalPort: 9509
 
 ingress:
   enabled: false
 
-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: aai/hbase
-
-  
 resources: {}
   # We usually recommend not to specify default resources and to leave this as a conscious
   # choice for the user. This also increases chances charts run on environments with little
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/Chart.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/Chart.yaml
new file mode 100644 (file)
index 0000000..4b89acf
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+apiVersion: v1\r
+description: ONAP POMBA Network Discovery Service Decomposition\r
+name: pomba-servicedecomposition\r
+version: 2.0.0\r
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/requirements.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/requirements.yaml
new file mode 100644 (file)
index 0000000..8ba6926
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright � 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+dependencies:\r
+  - name: common\r
+    version: ~2.0.0\r
+    repository: '@local'\r
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties b/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties
new file mode 100644 (file)
index 0000000..26737f5
--- /dev/null
@@ -0,0 +1,51 @@
+# Copyright © 2018 Amdocs
+#
+# 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
+
+spring.jersey.type=filter
+spring.mvc.urls=swagger,docs,prometheus,auditevents,info,heapdump,autoconfig,beans,loggers,dump,env,trace,health,configprops,mappings,metrics,webjars
+
+
+server.contextPath=/service-decomposition
+spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+
+#This property is used to set the Tomcat connector attributes.developers can define multiple attributes separated by comma
+#tomcat.connector.attributes=allowTrace-true
+#The max number of active threads in this pool
+server.tomcat.max-threads=200
+#The minimum number of threads always kept alive
+server.tomcat.min-Spare-Threads=25
+#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads
+server.tomcat.max-idle-time=60000
+
+basicAuth.username={{ .Values.config.serviceDecompositionUserId }}
+basicAuth.password={{ .Values.config.serviceDecompositionPassword }}
+
+# AAI REST Client Configuration
+aai.host=127.0.0.1
+aai.port=8443
+aai.httpProtocol=http
+aai.trustStorePath=tomcat_keystore
+aai.keyStorePath=aai-client-cert.p12
+aai.keyStorePassword=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
+aai.keyManagerFactoryAlgorithm=SunX509
+aai.keyStoreType=PKCS12
+aai.securityProtocol=TLS
+aai.connectionTimeout=5000
+aai.readTimeout=1000
+aai.resourceList=vnfc,vserver,l3-network
+aai.serviceInstancePath=/aai/v13/nodes/service-instance/{0}
+
+#Servlet context parameters
+server.context_parameters.p-name=value #context parameter with p-name as key and value as value.
+
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml b/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/log/logback.xml
new file mode 100644 (file)
index 0000000..1f00cbd
--- /dev/null
@@ -0,0 +1,30 @@
+<configuration>\r
+    <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>\r
+    <property name="p_lvl" value="%level"/>\r
+    <property name="p_log" value="%logger"/>\r
+    <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>\r
+    <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>\r
+    <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>\r
+    <!-- tabs -->\r
+    <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>\r
+    <property name="p_thr" value="%thread"/>\r
+    <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>\r
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">\r
+        <encoder>\r
+            <pattern>${pattern}</pattern>\r
+        </encoder>\r
+    </appender>\r
+    <appender name="FILE" class="ch.qos.logback.core.FileAppender">\r
+        <file>output.log</file>\r
+        <encoder>\r
+            <pattern>${pattern}</pattern>\r
+        </encoder>\r
+    </appender>\r
+    <logger level="INFO" name="org.onap.logging.ref.slf4j" additivity="false">\r
+        <appender-ref ref="STDOUT" />\r
+        <appender-ref ref="FILE" />\r
+    </logger>\r
+    <root level="INFO">\r
+        <appender-ref ref="STDOUT" />\r
+    </root>\r
+</configuration>\r
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..6982316
--- /dev/null
@@ -0,0 +1,30 @@
+# Copyright © 2018 Amdocs
+#
+# 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" . }}-log
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/application.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..14513f3
--- /dev/null
@@ -0,0 +1,111 @@
+# Copyright © 2018 Amdocs
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{ 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 }}
+          env:
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: true
+          - name: {{ include "common.fullname" . }}-logs
+            mountPath: /var/log/onap
+          - mountPath: /opt/app/config/logback.xml
+            name: {{ include "common.fullname" . }}-log-conf
+            subPath: logback.xml
+          - mountPath: /opt/app/config/application.properties
+            name: {{ include "common.fullname" . }}-config
+            subPath: application.properties
+            readOnly: true
+
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+
+        # Filebeat sidecar container
+        - name: {{ include "common.name" . }}-filebeat-onap
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts:
+          - name: {{ include "common.fullname" . }}-filebeat-conf
+            mountPath: /usr/share/filebeat/filebeat.yml
+            subPath: filebeat.yml
+          - name: {{ include "common.fullname" . }}-data-filebeat
+            mountPath: /usr/share/filebeat/data
+          - name: {{ include "common.fullname" . }}-logs
+            mountPath: /var/log/onap
+
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name:  {{ include "common.fullname" . }}-logs
+          emptyDir: {}
+        - name: {{ include "common.fullname" . }}-log-conf
+          configMap:
+            name: {{ include "common.fullname" . }}-log
+        - name: {{ include "common.fullname" . }}-config
+          configMap:
+            name: {{ include "common.fullname" . }}-configmap
+        - name: {{ include "common.fullname" . }}-filebeat-conf
+          configMap:
+            name: {{ .Release.Name }}-pomba-filebeat-configmap
+        - name: {{ include "common.fullname" . }}-data-filebeat
+          emptyDir: {}
+
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/templates/service.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/templates/service.yaml
new file mode 100644 (file)
index 0000000..defd063
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright © 2018 Amdocs
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.externalPort }}
+      #Example internal target port if required
+      #targetPort: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName | default "http" }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName | default "http" }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml b/kubernetes/pomba/charts/pomba-servicedecomposition/values.yaml
new file mode 100644 (file)
index 0000000..3de087e
--- /dev/null
@@ -0,0 +1,96 @@
+# Copyright © 2018 Amdocs\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+#################################################################\r
+# Global configuration defaults.\r
+#################################################################\r
+global:\r
+  nodePortPrefix: 302\r
+  repository: nexus3.onap.org:10001\r
+\r
+#################################################################\r
+# Application configuration defaults.\r
+#################################################################\r
+# application image\r
+repository: nexus3.onap.org:10001\r
+image:  onap/service-decomposition:latest\r
+pullPolicy: Always\r
+\r
+# flag to enable debugging - application support required\r
+debugEnabled: false\r
+\r
+# application configuration\r
+# Example:\r
+config:\r
+  # Service Decomposition REST Client Configuration\r
+  # Basic Authorization Client credentials for Service Decomposition REST service\r
+  serviceDecompositionUserId: admin\r
+  serviceDecompositionPassword: OBF:1u2a1toa1w8v1tok1u30\r
+\r
+# default number of instances\r
+replicaCount: 1\r
+\r
+nodeSelector: {}\r
+\r
+affinity: {}\r
+\r
+# probe configuration parameters\r
+liveness:\r
+  initialDelaySeconds: 10\r
+  periodSeconds: 10\r
+  # necessary to disable liveness probe when setting breakpoints\r
+  # in debugger so K8s doesn't restart unresponsive container\r
+  enabled: true\r
+\r
+readiness:\r
+  initialDelaySeconds: 10\r
+  periodSeconds: 10\r
+\r
+#Example service definition with external, internal and node ports.\r
+service:\r
+  # The default service name (exposed in the service.yaml) will be the same\r
+  # name as the chart. If the service name needs to be overriden (such as\r
+  # when a subchart is shared), uncomment the value below.\r
+  #name: <service-name-override>\r
+\r
+  #Services may use any combination of ports depending on the 'type' of\r
+  #service being defined.\r
+  type: ClusterIP\r
+  externalPort: 9532\r
+  internalPort: 8080\r
+#  nodePort: <replace with unused node port suffix eg. 23>\r
+  # optional port name override - default can be defined in service.yaml\r
+  #portName: http\r
+\r
+ingress:\r
+  enabled: false\r
+\r
+resources: {}\r
+  # We usually recommend not to specify default resources and to leave this as a conscious\r
+  # choice for the user. This also increases chances charts run on environments with little\r
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following\r
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.\r
+  #\r
+  # Example:\r
+  # Configure resource requests and limits\r
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/\r
+  # Minimum memory for development is 2 CPU cores and 4GB memory\r
+  # Minimum memory for production is 4 CPU cores and 8GB memory\r
+#resources:\r
+#  limits:\r
+#    cpu: 2\r
+#    memory: 4Gi\r
+#  requests:\r
+#    cpu: 2\r
+#    memory: 4Gi\r
@@ -13,6 +13,6 @@
 # limitations under the License.
 
 apiVersion: v1
-description: ONAP VNFSDK Postgres Database
-name: vnfsdk-postgres
+description: POMBA Validaton-Service
+name: pomba-validation-service
 version: 2.0.0
diff --git a/kubernetes/pomba/charts/pomba-validation-service/requirements.yaml b/kubernetes/pomba/charts/pomba-validation-service/requirements.yaml
new file mode 100644 (file)
index 0000000..ce82a2f
--- /dev/null
@@ -0,0 +1,18 @@
+# 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.
+
+dependencies:
+  - name: common
+    version: ~2.0.0
+    repository: '@local'
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/README.txt b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/README.txt
new file mode 100644 (file)
index 0000000..5cc0149
--- /dev/null
@@ -0,0 +1,10 @@
+This directory contains all external configuration files that
+need to be mounted into an application container.
+
+See the configmap.yaml in the templates directory for an example
+of how to load (ie map) config files from this directory, into
+Kubernetes, for distribution within the k8s cluster.
+
+See deployment.yaml in the templates directory for an example
+of how the 'config mapped' files are then mounted into the
+containers.
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/aai-environment.properties b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/aai-environment.properties
new file mode 100644 (file)
index 0000000..2d600ce
--- /dev/null
@@ -0,0 +1,15 @@
+host=dummy-host.onap.org
+port=8443
+httpProtocol=https
+trustStorePath=/auth/tomcat_keystore
+#trustStorePassword intentionally left blank
+trustStorePassword.x=
+keyStorePath=/auth/client-cert-onap.p12
+keyStorePassword.x=dfcfd1003bdde18de8efea3c8661510e
+keyManagerFactoryAlgorithm=SunX509
+keyStoreType=PKCS12
+securityProtocol=TLS
+connectionTimeout=5000
+readTimeout=1000
+
+baseModelURI=/aai/v8/service-design-and-creation/models/model
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/client-cert-onap.p12 b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/client-cert-onap.p12
new file mode 100644 (file)
index 0000000..dbf4fca
Binary files /dev/null and b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/client-cert-onap.p12 differ
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/tomcat_keystore b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/tomcat_keystore
new file mode 100644 (file)
index 0000000..9eec841
Binary files /dev/null and b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth/tomcat_keystore differ
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth_policy.json b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/auth_policy.json
new file mode 100644 (file)
index 0000000..ea5565a
--- /dev/null
@@ -0,0 +1,46 @@
+{"roles": [
+    {
+        "name": "admin",
+        "functions": [
+            {
+                "name": "actions",
+                "methods": [
+                    {"name": "GET"},
+                    {"name": "DELETE"},
+                    {"name": "PUT"}
+                ]
+            },
+            {
+                "name": "validate",
+                "methods": [{"name": "POST"}]
+            }
+        ],
+        "users": [
+            {"username": "CN=common-name, OU=org-unit, O=org, L=location, ST=state, C=US"},
+            {"username": "CN=test, OU=qa, O=Test Ltd, L=London, ST=London, C=GB"},
+            {"username": "CN=aai-client.dev.att.com, OU=aai digicert client dev, O=\"AT&T Services, Inc.\", L=Dallas, ST=Texas, C=US"}
+        ]
+    },
+    {
+        "name": "ops",
+        "functions": [{
+            "name": "actions",
+            "methods": [{"name": "POST"}]
+        }],
+        "users": [
+            {"username": "CN=common-name, OU=org-unit, O=org, L=location, ST=state, C=US"},
+            {"username": "CN=test, OU=qa, O=Test Ltd, L=London, ST=London, C=GB"}
+        ]
+    },
+    {
+        "name": "basicauth",
+        "functions": [{
+            "name": "util",
+            "methods": [{"name": "GET"}]
+        }],
+        "users": [{
+            "user": "aai",
+            "pass": "OBF:1u2a1t2v1vgb1s3g1s3m1vgj1t3b1u30"
+        }]
+    }
+]}
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/rule-indexing.properties b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/rule-indexing.properties
new file mode 100644 (file)
index 0000000..06f4626
--- /dev/null
@@ -0,0 +1,4 @@
+rule.indexing.events=POA-EVENT
+rule.indexing.exclude.oxm.validation=POA-EVENT
+rule.indexing.key.attributes=$.poa-event.modelVersionId,$.poa-event.modelInvariantId
+rule.indexing.default.key=default-rules
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/schemaIngest.properties b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/schemaIngest.properties
new file mode 100644 (file)
index 0000000..41e83bb
--- /dev/null
@@ -0,0 +1,7 @@
+# Properties for the SchemaLocationsBean
+# The AAI Schema jar will be unpacked to bundleconfig/etc
+schemaConfig=bundleconfig
+# Files named aai_oxm_v*.xml are unpacked here:
+nodeDir=${APP_HOME}/bundleconfig/etc/oxm
+# Dummy folder/directory:
+edgeDir=${APP_HOME}/bundleconfig/etc/oxm
@@ -1,23 +1,22 @@
-#!/bin/bash
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright (c) 2017 AT&T
-#
+# ============LICENSE_START===================================================
+# Copyright (c) 2018 Amdocs
+# ============================================================================
 # 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
+#    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============================================
-
-printf "%s" "$*"
-printf `pwd`
-printf "%s" "---------------"
+# ============LICENSE_END=====================================================
 
-helm install local/$2 --name $2 --namespace $1
\ No newline at end of file
+poa-audit-result.name=POA-AUDIT-RESULT
+poa-audit-result.host=message-router:3904
+poa-audit-result.publisher.partition=1
+poa-audit-result.username=
+poa-audit-result.password=
+poa-audit-result.transport.type=HTTPAUTH
@@ -1,25 +1,23 @@
-#!/bin/bash
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright (c) 2017 AT&T
-#
+# ============LICENSE_START===================================================
+# Copyright (c) 2018 Amdocs
+# ============================================================================
 # 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
+#    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============================================
-
-printf "%s" "$*"
-printf `pwd`
-printf "%s" "---------------"
+# ============LICENSE_END=====================================================
 
-kubectl create namespace $1
-kubectl create clusterrolebinding $1-admin-binding --clusterrole=cluster-admin --serviceaccount=$1:default
-kubectl --namespace $1 create secret docker-registry $1-docker-registry-key --docker-server=nexus3.onap.org:10001 --docker-username=docker --docker-password=docker --docker-email=@
\ No newline at end of file
+poa-rule-validation.name=POA-RULE-VALIDATION
+poa-rule-validation.host=message-router:3904
+poa-rule-validation.username=
+poa-rule-validation.password=
+poa-rule-validation.consumer.group=poa-validator-test
+poa-rule-validation.consumer.id=test
+poa-rule-validation.transport.type=HTTPAUTH
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/validation-service-auth.properties b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/validation-service-auth.properties
new file mode 100644 (file)
index 0000000..8bbd423
--- /dev/null
@@ -0,0 +1,2 @@
+auth.policy.file=${CONFIG_HOME}/auth_policy.json
+auth.authentication.disable=false
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/validation-service.properties b/kubernetes/pomba/charts/pomba-validation-service/resources/appconfig/validation-service.properties
new file mode 100644 (file)
index 0000000..9b2e862
--- /dev/null
@@ -0,0 +1,13 @@
+topic.publish.enable=true
+topic.publish.retries=3
+topic.consume.enable=true
+topic.consume.polling.interval.seconds=3
+
+event.domain=onap
+event.action.exclude=DELETE
+event.type.rule=POA-EVENT
+event.type.model=NOT-APPLICABLE-IN-POMBA
+event.type.end=END-EVENT
+
+model.cache.expirySeconds=3
+aai.oxm.version=10
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/application.properties b/kubernetes/pomba/charts/pomba-validation-service/resources/application.properties
new file mode 100644 (file)
index 0000000..a71bb9b
--- /dev/null
@@ -0,0 +1,43 @@
+# ============LICENSE_START===================================================
+# Copyright (c) 2018 Amdocs
+# ============================================================================
+# 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=====================================================
+
+# Note that the start.sh script sets the following System Properties
+# We provide default values here for testing purposes
+APP_HOME=.
+CONFIG_HOME=appconfig
+com.att.eelf.logging.path=src/main/resources
+com.att.eelf.logging.file=logback.xml
+logback.configurationFile=${com.att.eelf.logging.path}/${com.att.eelf.logging.file}
+
+schemaIngestPropLoc=${CONFIG_HOME}/schemaIngest.properties
+
+server.port=9501
+server.ssl.client-auth=want
+server.ssl.key-store=${CONFIG_HOME}/auth/tomcat_keystore
+# Work-around for missing Java certificates file "cacerts". This default value should be overridden.
+server.ssl.trust-store=${CONFIG_HOME}/auth/tomcat_keystore
+
+server.tomcat.max-threads=200
+# The minimum number of threads always kept alive
+server.tomcat.min-spare-threads=25
+
+# Spring Boot logging
+logging.config=${logback.configurationFile}
+
+consumer.topic.names=poa-rule-validation
+publisher.topic.names=poa-audit-result
+
+topics.properties.location=${CONFIG_HOME}/topics/
diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy b/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy
new file mode 100644 (file)
index 0000000..c669909
--- /dev/null
@@ -0,0 +1,226 @@
+/*
+ * ============LICENSE_START===================================================
+ * Copyright (c) 2018 Amdocs
+ * ============================================================================
+ * 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=====================================================
+ */
+
+entity {
+    name 'POA-EVENT'
+    indexing {
+        indices 'default-rules'
+    }
+  validation {
+
+    // NDCB-AAI comparison: Context level
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb', 'context-list.aai'
+    }
+
+    // NDCB-AAI comparison: Service entity
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb.service', 'context-list.aai.service'
+    }
+
+    // NDCB-AAI comparison: VF list
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb.vfList[*]', 'context-list.aai.vfList[*]'
+    }
+
+    // NDCB-AAI comparison: VF-Module list
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb.vfList[*].vfModuleList[*]', 'context-list.aai.vfList[*].vfModuleList[*]'
+    }
+
+    // NDCB-AAI comparison: VNFC list
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb.vfList[*].vnfcList[*]', 'context-list.aai.vfList[*].vnfcList[*]'
+    }
+
+    // NDCB-AAI comparison: VM list
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb.vfList[*].vfModuleList[*].vmList[*]', 'context-list.aai.vfList[*].vfModuleList[*].vmList[*]'
+    }
+
+    // NDCB-AAI comparison: Network list
+    useRule {
+      name 'NDCB-AAI-attribute-comparison'
+      attributes 'context-list.ndcb.vfList[*].vfModuleList[*].networkList[*]', 'context-list.aai.vfList[*].vfModuleList[*].networkList[*]'
+    }
+
+    // SDC-AAI VNFC type
+    useRule {
+      name 'SDC-AAI-vnfc-type'
+      attributes 'context-list.sdc.vfList[*].vnfcList[*]', 'context-list.aai.vfList[*].vnfcList[*]'
+    }
+
+    // SDC-AAI VNFC node count
+    useRule {
+      name 'SDC-AAI-vnfc-node-count'
+      attributes 'context-list.sdc.vfList[*].vnfcList[*]', 'context-list.aai.vfList[*].vnfcList[*]'
+    }
+
+    // SDC-AAI VF-Module instance
+    useRule {
+      name 'SDC-AAI-vf-module-instance-check'
+      attributes 'context-list.ndcb.vfList[*].vfModuleList[*]', 'context-list.aai.vfList[*].vfModuleList[*]'
+    }
+  }
+}
+
+rule {
+  name        'SDC-AAI-vnfc-type'
+  category    'INVALID_VALUE'
+  description 'Validate that each VNFC instance in AAI conforms to a VNFC type defined in SDC model'
+  errorText   'AAI VNFC instance includes non-specified type in design SDC model'
+  severity    'ERROR'
+  attributes  'sdcList', 'aaiList'
+  validate    '''
+        def getVnfcTypes = { parsedData ->
+          parsedData.collect{ it.findResult{ k, v -> if(k.equals("type")) {return "$v"}}}
+        }
+
+        def slurper = new groovy.json.JsonSlurper()
+        def sdcTypes = getVnfcTypes(slurper.parseText(sdcList.toString()))
+        def aaiTypes = getVnfcTypes(slurper.parseText(aaiList.toString()))
+
+        // each type in AAI must exist in SDC
+        return aaiTypes.containsAll(sdcTypes)
+                '''
+}
+
+rule {
+  name        'SDC-AAI-vnfc-node-count'
+  category    'INVALID_VALUE'
+  description 'Validate that for each VNFC node defined in SDC model, there is at least one VNFC instance in AAI'
+  errorText   'Design has specified types but not all of them exist in AAI'
+  severity    'WARNING'
+  attributes  'sdcList', 'aaiList'
+  validate    '''
+        def getVnfcNodes = { parsedData ->
+          parsedData.collect { new Tuple2(
+              it.findResult{ k, v -> if(k.equals("name")) {return "$v"}},
+              it.findResult{ k, v -> if(k.equals("type")) {return "$v"}})
+          }
+        }
+
+        def slurper = new groovy.json.JsonSlurper()
+        def sdcNodes = getVnfcNodes(slurper.parseText(sdcList.toString()))
+        def aaiNodes = getVnfcNodes(slurper.parseText(aaiList.toString()))
+
+        // each node in AAI must exist in SDC
+        return aaiNodes.containsAll(sdcNodes)
+                '''
+}
+
+rule {
+  name        'SDC-AAI-vf-module-instance-check'
+  category    'INVALID_VALUE'
+  description 'Validate that each VF module instance in AAI conforms to a VF module defined in SDC service model'
+  errorText   'One or more AAI VF module instance(s) not defined in SDC model'
+  severity    'CRITICAL'
+  attributes  'sdcList', 'aaiList'
+  validate    '''
+        def getVfModules = { parsedData ->
+          parsedData.collect{ it.findResult{ k, v -> if(k.equals("name")) {return "$v"}}}
+        }
+
+        def slurper = new groovy.json.JsonSlurper()
+        def sdcVfModules = getVfModules(slurper.parseText(sdcList.toString()))
+        def aaiVfModules = getVfModules(slurper.parseText(aaiList.toString()))
+
+        // all VF modules in AAI must exist in SDC
+        return aaiVfModules.containsAll(sdcVfModules)
+                '''
+}
+
+rule {
+  name        'NDCB-AAI-attribute-comparison'
+  category    'INVALID_VALUE'
+  description 'Verify that every attribute in Network-Discovery is the same as in AAI'
+  errorText   'Some attributes in Network-Discovery are not equal to attributes in AAI'
+  severity    'ERROR'
+  attributes  'ndcbItems', 'aaiItems'
+  validate    '''
+        Closure<java.util.Map> getAttributes = { parsedData ->
+          java.util.Map attributeMap = new java.util.HashMap()
+
+          def isAttributeDataQualityOk = { attribute ->
+            attribute.findResult{ k, v -> if(k.equals("dataQuality") ) {return v.get("status")}}.equals("ok")
+          }
+
+          def addToMap = { attrKey, attrValue ->
+            java.util.Set values = attributeMap.get("$attrKey")
+            if(values == null) {
+              values = new java.util.HashSet()
+              attributeMap.put("$attrKey", values)
+            }
+            values.add("$attrValue")
+          }
+
+          def addAttributeToMap = { attribute ->
+            if(isAttributeDataQualityOk(attribute)) {
+              String key, value
+              attribute.each { k, v ->
+                if(k.equals("name")) {key = "$v"}
+                if(k.equals("value")) {value = "$v"}
+              }
+              addToMap("$key", "$value")
+            }
+          }
+
+          def processKeyValue = { key, value ->
+            if(value instanceof java.util.ArrayList) {
+              if(key.equals("attributeList")) {
+                value.each {
+                  addAttributeToMap(it)
+                }
+              }
+            } else if(!(value instanceof groovy.json.internal.LazyMap)) {
+              // only add key-value attributes, skip the rest
+              addToMap("$key", "$value")
+            }
+          }
+
+          if(parsedData instanceof java.util.ArrayList) {
+            parsedData.each {
+              it.each { key, value -> processKeyValue(key, value) }
+            }
+          } else {
+            parsedData.each { key, value -> processKeyValue(key, value) }
+          }
+          return attributeMap
+        }
+
+        def slurper = new groovy.json.JsonSlurper()
+        java.util.Map ndcb = getAttributes(slurper.parseText(ndcbItems.toString()))
+        java.util.Map aai = getAttributes(slurper.parseText(aaiItems.toString()))
+
+        ndcb.each{ ndcbKey, ndcbValueList ->
+          def aaiValueList = aai.get("$ndcbKey")
+          aaiValueList.each{ aaiValue ->
+            if(!ndcbValueList.any{ it == "$aaiValue" }) {
+              return false
+            }
+          }
+        }
+        return true
+        '''
+}
\ No newline at end of file
diff --git a/kubernetes/pomba/charts/pomba-validation-service/templates/configmap.yaml b/kubernetes/pomba/charts/pomba-validation-service/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..d3bfd81
--- /dev/null
@@ -0,0 +1,45 @@
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-root-config
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/*.*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-config-properties
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/appconfig/*.*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-config-topics
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/appconfig/topics/*.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-rules
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/bundleconfig/etc/rules/poa-event/*.groovy").AsConfig . | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml b/kubernetes/pomba/charts/pomba-validation-service/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..5faa453
--- /dev/null
@@ -0,0 +1,138 @@
+# 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.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      containers:
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{ if .Values.liveness.enabled }}
+          livenessProbe:
+            tcpSocket:
+              port: {{ .Values.service.internalPort }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end }}
+          {{ if .Values.readiness.enabled }}
+          readinessProbe:
+            tcpSocket:
+              port: {{ .Values.service.internalPort }}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          {{ end }}
+          env:
+            - name: APP_HOME
+              value: "{{ .Values.config.appDir }}"
+            - name: CONFIG_HOME
+              value: "{{ .Values.config.configDir }}"
+            - name: MAX_HEAP
+              value: "{{ .Values.config.maxHeap }}"
+          volumeMounts:
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: true
+          - mountPath: {{ .Values.config.appDir }}/application.properties
+            name: root-config-app-prop
+            subPath: application.properties
+          - mountPath: {{ .Values.config.configDir }}/
+            name: properties
+          - mountPath: {{ .Values.config.configAuthDir }}/
+            name: config-auth
+          - mountPath: {{ .Values.config.configTopicsDir }}/
+            name: config-topics
+          - mountPath: {{ .Values.config.rulesDir }}/
+            name: rules
+          resources:
+{{ toYaml .Values.resources | indent 12 }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+
+      volumes:
+        - name: localtime
+          hostPath:
+            path: /etc/localtime
+        - name: root-config-app-prop
+          configMap:
+            name: {{ include "common.fullname" . }}-root-config
+            defaultMode: 0644
+        - name: properties
+          configMap:
+            name: {{ include "common.fullname" . }}-config-properties
+            defaultMode: 0644
+            items:
+            - key: validation-service.properties
+              path: validation-service.properties
+            - key: validation-service-auth.properties
+              path: validation-service-auth.properties
+            - key: rule-indexing.properties
+              path: rule-indexing.properties
+            - key: aai-environment.properties
+              path: aai-environment.properties
+            - key: schemaIngest.properties
+              path: schemaIngest.properties
+            - key: auth_policy.json
+              path: auth_policy.json
+        - name: config-auth
+          secret:
+            secretName: {{ include "common.fullname" . }}-config-auth-secret
+            items:
+            - key: tomcat_keystore
+              path: tomcat_keystore
+            - key: client-cert-onap.p12
+              path: client-cert-onap.p12
+        - name: config-topics
+          configMap:
+            name: {{ include "common.fullname" . }}-config-topics
+            defaultMode: 0644
+            items:
+            - key: topic-poa-audit-result.properties
+              path: topic-poa-audit-result.properties
+            - key: topic-poa-rule-validation.properties
+              path: topic-poa-rule-validation.properties
+        - name: rules
+          configMap:
+            name: {{ include "common.fullname" . }}-rules
+            defaultMode: 0644
+            items:
+            - key: default-rules.groovy
+              path: default-rules.groovy
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/pomba/charts/pomba-validation-service/templates/secrets.yaml b/kubernetes/pomba/charts/pomba-validation-service/templates/secrets.yaml
new file mode 100644 (file)
index 0000000..3235967
--- /dev/null
@@ -0,0 +1,22 @@
+# 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.
+
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ include "common.fullname" . }}-config-auth-secret
+  namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ (.Files.Glob "resources/appconfig/auth/*").AsSecrets | indent 2 }}
diff --git a/kubernetes/pomba/charts/pomba-validation-service/templates/service.yaml b/kubernetes/pomba/charts/pomba-validation-service/templates/service.yaml
new file mode 100644 (file)
index 0000000..11195da
--- /dev/null
@@ -0,0 +1,41 @@
+# 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.
+
+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 }}
+      #Example internal target port if required
+      #targetPort: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName | default "http" }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName | default "http" }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
diff --git a/kubernetes/pomba/charts/pomba-validation-service/values.yaml b/kubernetes/pomba/charts/pomba-validation-service/values.yaml
new file mode 100644 (file)
index 0000000..9607671
--- /dev/null
@@ -0,0 +1,107 @@
+# 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:
+  nodePortPrefix: 302
+  repository: nexus3.onap.org:10001
+#  readinessRepository: oomk8s
+#  readinessImage: readiness-check:2.0.0
+#  loggingRepository: docker.elastic.co
+#  loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+#repository: nexus3.onap.org:10001
+repository: nexus3.onap.org:10001
+image:  onap/validation:1.3-STAGING-latest
+#pullPolicy: Always
+pullPolicy: IfNotPresent
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+  appDir: /opt/app/validation-service
+  configDir: /opt/app/validation-service/appconfig
+  configAuthDir: /opt/app/validation-service/appconfig/auth
+  configTopicsDir: /opt/app/validation-service/appconfig/topics
+  rulesDir: /opt/app/validation-service/bundleconfig/etc/rules/poa-event
+  maxHeap: 1024
+#  username: myusername
+#  password: mypassword
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: false
+
+readiness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+  enabled: false
+
+#Example service definition with external, internal and node ports.
+service:
+  # The default service name (exposed in the service.yaml) will be the same
+  # name as the chart. If the service name needs to be overriden (such as
+  # when a subchart is shared), uncomment the value below.
+  #name: validation-service
+
+  #Services may use any combination of ports depending on the 'type' of
+  #service being defined.
+  type: ClusterIP
+  externalPort: 9529
+  internalPort: 8080
+#  nodePort: <replace with unused node port suffix eg. 23>
+  # optional port name override - default can be defined in service.yaml
+  #portName: http
+
+ingress:
+  enabled: false
+
+resources: {}
+  # We usually recommend not to specify default resources and to leave this as a conscious
+  # choice for the user. This also increases chances charts run on environments with little
+  # resources, such as Minikube. If you do want to specify resources, uncomment the following
+  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+  #
+  # Example:
+  # Configure resource requests and limits
+  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+  # Minimum memory for development is 2 CPU cores and 4GB memory
+  # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+#  limits:
+#    cpu: 2
+#    memory: 4Gi
+#  requests:
+#    cpu: 2
+#    memory: 4Gi
index ba6057a..f0acaa5 100644 (file)
@@ -20,6 +20,8 @@ global:
   readinessRepository: oomk8s
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
+  repository: nexus3.onap.org:10001
+  dockerhubRepository: docker.io
 
 # application configuration
 config:
index 82c652d..a251872 100644 (file)
@@ -1,24 +1,24 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-
-# docker folder
-docker/
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
+\r
+# docker folder\r
+docker/\r
index b59346a..bc3737a 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 9c6fc51..148c080 100755 (executable)
@@ -1,3 +1,18 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T
+# Modifications Copyright © 2018 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.
+
 # domain settings
 #domain_class_location =
 
index 5500163..99fe917 100644 (file)
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ============LICENSE_START==========================================
-  ONAP Portal
-  ===================================================================
-  Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-  ===================================================================
-
-  Unless otherwise specified, all software contained herein is licensed
-  under the Apache License, Version 2.0 (the “License”);
-  you may not use this software 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.
-
-  Unless otherwise specified, all documentation contained herein is licensed
-  under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
-  you may not use this documentation except in compliance with the License.
-  You may obtain a copy of the License at
-
-              https://creativecommons.org/licenses/by/4.0/
-
-  Unless required by applicable law or agreed to in writing, documentation
-  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============================================
-  -->
-
-<!DOCTYPE xml>
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
-
-       <!-- specify the component name -->
-       <property name="componentName" value="onapportal"></property>
-
-       <!-- specify the base path of the log directory -->
-       <property name="logDirPrefix" value="/var/log/onap"></property>
-
-       <!-- The directories where logs are written -->
-       <property name="logDirectory" value="${logDirPrefix}/${componentName}" />
-       <!-- Can easily relocate debug logs by modifying this path. -->
-       <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />
-
-       <!-- log file names -->
-       <property name="generalLogName" value="application" />
-       <property name="errorLogName" value="error" />
-       <property name="metricsLogName" value="metrics" />
-       <property name="auditLogName" value="audit" />
-       <property name="debugLogName" value="debug" />
-       <!-- These loggers are not used in code (yet). <property name="securityLogName"
-               value="security" /> <property name="policyLogName" value="policy" /> <property
-               name="performanceLogName" value="performance" /> <property name="serverLogName"
-               value="server" /> -->
-
-       <!-- ServerFQDN=Server,  -->
-       <property name="auditLoggerPattern"
-               value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-
-       <property name="metricsLoggerPattern"
-               value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-
-       <property name="errorLoggerPattern"
-               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
-
-       <property name="defaultLoggerPattern"
-               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />
-
-       <!-- use %class so library logging calls yield their class name -->
-       <property name="applicationLoggerPattern"
-               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />
-
-       <!--
-       <property name="defaultPattern"
-               value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
-       <property name="debugLoggerPattern"
-               value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
-        -->
-       <!-- <property name="debugLoggerPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n"
-               /> -->
-       <!-- Example evaluator filter applied against console appender -->
-       <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-               <encoder>
-                       <pattern>${applicationLoggerPattern}</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>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <!-- daily rollover -->
-                       <fileNamePattern>${logDirectory}/${generalLogName}.log.%d{yyyy-MM-dd}.zip
-                       </fileNamePattern>
-                       <maxHistory>30</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${applicationLoggerPattern}</pattern>
-               </encoder>
-               <filter class="org.openecomp.portalapp.portal.utils.CustomLoggingFilter" />
-       </appender>
-
-       <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <!-- Class name is part of caller data -->
-       <includeCallerData>true</includeCallerData>
-               <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.TimeBasedRollingPolicy">
-                       <!-- daily roll over -->
-                       <fileNamePattern>${logDirectory}/${auditLogName}.log.%d{yyyy-MM-dd}.zip
-                       </fileNamePattern>
-                       <maxHistory>30</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${auditLoggerPattern}</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.TimeBasedRollingPolicy">
-                       <!-- daily roll over -->
-                       <fileNamePattern>${logDirectory}/${metricsLogName}.log.%d{yyyy-MM-dd}.zip
-                       </fileNamePattern>
-                       <maxHistory>30</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${metricsLoggerPattern}</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>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <!-- daily roll over -->
-                       <fileNamePattern>${logDirectory}/${errorLogName}.log.%d{yyyy-MM-dd}.zip
-                       </fileNamePattern>
-                       <maxHistory>30</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${errorLoggerPattern}</pattern>
-               </encoder>
-       </appender>
-
-       <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <appender-ref ref="EELFError" />
-       </appender>
-
-       <appender name="EELFDebug"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <file>${debugLogDirectory}/${debugLogName}.log</file>
-               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                       <!-- daily roll over -->
-                       <fileNamePattern>${logDirectory}/${debugLogName}.log.%d{yyyy-MM-dd}.zip
-                       </fileNamePattern>
-                       <maxHistory>30</maxHistory>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>${defaultLoggerPattern}</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.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.error" level="info" additivity="false">
-               <appender-ref ref="asyncEELFError" />
-       </logger>
-
-       <logger name="com.att.eelf.debug" level="debug" additivity="false">
-               <appender-ref ref="asyncEELFDebug" />
-       </logger>
-
-       <root level="INFO">
-               <appender-ref ref="asyncEELF" />
-       </root>
-
-</configuration>
+<?xml version="1.0" encoding="UTF-8"?>\r
+<!--\r
+  ============LICENSE_START==========================================\r
+  ONAP Portal\r
+  ===================================================================\r
+  Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
+  Modifications Copyright © 2018 Amdocs, Bell Canada \r
+  ====================================================================\r
+  Unless otherwise specified, all software contained herein is licensed\r
+  under the Apache License, Version 2.0 (the “License”);\r
+  you may not use this software except in compliance with the License.\r
+  You may obtain a copy of the License at\r
+\r
+       http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+  Unless required by applicable law or agreed to in writing, software\r
+  distributed under the License is distributed on an "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+  See the License for the specific language governing permissions and\r
+  limitations under the License.\r
+\r
+  Unless otherwise specified, all documentation contained herein is licensed\r
+  under the Creative Commons License, Attribution 4.0 Intl. (the “License”);\r
+  you may not use this documentation except in compliance with the License.\r
+  You may obtain a copy of the License at\r
+\r
+              https://creativecommons.org/licenses/by/4.0/\r
+\r
+  Unless required by applicable law or agreed to in writing, documentation\r
+  distributed under the License is distributed on an "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+  See the License for the specific language governing permissions and\r
+  limitations under the License.\r
+\r
+  ============LICENSE_END============================================\r
+-->\r
+<!DOCTYPE xml>\r
+<configuration scan="true" scanPeriod="3 seconds" debug="true">\r
+\r
+       <!-- specify the component name -->\r
+       <property name="componentName" value="onapportal"></property>\r
+\r
+       <!-- specify the base path of the log directory -->\r
+       <property name="logDirPrefix" value="/var/log/onap"></property>\r
+\r
+       <!-- The directories where logs are written -->\r
+       <property name="logDirectory" value="${logDirPrefix}/${componentName}" />\r
+       <!-- Can easily relocate debug logs by modifying this path. -->\r
+       <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />\r
+\r
+       <!-- log file names -->\r
+       <property name="generalLogName" value="application" />\r
+       <property name="errorLogName" value="error" />\r
+       <property name="metricsLogName" value="metrics" />\r
+       <property name="auditLogName" value="audit" />\r
+       <property name="debugLogName" value="debug" />\r
+       <!-- These loggers are not used in code (yet). <property name="securityLogName"\r
+               value="security" /> <property name="policyLogName" value="policy" /> <property\r
+               name="performanceLogName" value="performance" /> <property name="serverLogName"\r
+               value="server" /> -->\r
+\r
+       <!-- ServerFQDN=Server,  -->\r
+       <property name="auditLoggerPattern"\r
+               value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />\r
+\r
+       <property name="metricsLoggerPattern"\r
+               value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />\r
+\r
+       <property name="errorLoggerPattern"\r
+               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />\r
+\r
+       <property name="defaultLoggerPattern"\r
+               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />\r
+\r
+       <!-- use %class so library logging calls yield their class name -->\r
+       <property name="applicationLoggerPattern"\r
+               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />\r
+\r
+       <!--\r
+       <property name="defaultPattern"\r
+               value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />\r
+       <property name="debugLoggerPattern"\r
+               value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />\r
+        -->\r
+       <!-- <property name="debugLoggerPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n"\r
+               /> -->\r
+       <!-- Example evaluator filter applied against console appender -->\r
+       <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">\r
+               <encoder>\r
+                       <pattern>${applicationLoggerPattern}</pattern>\r
+               </encoder>\r
+       </appender>\r
+\r
+       <!-- ============================================================================ -->\r
+       <!-- EELF Appenders -->\r
+       <!-- ============================================================================ -->\r
+\r
+       <!-- The EELFAppender is used to record events to the general application\r
+               log -->\r
+\r
+\r
+       <appender name="EELF"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${generalLogName}.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <!-- daily rollover -->\r
+                       <fileNamePattern>${logDirectory}/${generalLogName}.log.%d{yyyy-MM-dd}.zip\r
+                       </fileNamePattern>\r
+                       <maxHistory>30</maxHistory>\r
+               </rollingPolicy>\r
+               <encoder>\r
+                       <pattern>${applicationLoggerPattern}</pattern>\r
+               </encoder>\r
+               <filter class="org.openecomp.portalapp.portal.utils.CustomLoggingFilter" />\r
+       </appender>\r
+\r
+       <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize>\r
+               <!-- Class name is part of caller data -->\r
+       <includeCallerData>true</includeCallerData>\r
+               <appender-ref ref="EELF" />\r
+       </appender>\r
+\r
+       <!-- EELF Security Appender. This appender is used to record security events\r
+               to the security log file. Security events are separate from other loggers\r
+               in EELF so that security log records can be captured and managed in a secure\r
+               way separate from the other logs. This appender is set to never discard any\r
+               events. -->\r
+       <!-- <appender name="EELFSecurity" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${securityLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+               <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip </fileNamePattern>\r
+               <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy\r
+               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>\r
+               </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>\r
+               </appender> <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize> <discardingThreshold>0</discardingThreshold> <appender-ref\r
+               ref="EELFSecurity" /> </appender> -->\r
+\r
+       <!-- EELF Performance Appender. This appender is used to record performance\r
+               records. -->\r
+       <!-- <appender name="EELFPerformance" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${performanceLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+               <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip </fileNamePattern>\r
+               <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy\r
+               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>\r
+               </triggeringPolicy> <encoder> <outputPatternAsHeader>true</outputPatternAsHeader>\r
+               <pattern>${defaultPattern}</pattern> </encoder> </appender> <appender name="asyncEELFPerformance"\r
+               class="ch.qos.logback.classic.AsyncAppender"> <queueSize>256</queueSize>\r
+               <appender-ref ref="EELFPerformance" /> </appender> -->\r
+\r
+       <!-- EELF Server Appender. This appender is used to record Server related\r
+               logging events. The Server logger and appender are specializations of the\r
+               EELF application root logger and appender. This can be used to segregate\r
+               Server events from other components, or it can be eliminated to record these\r
+               events as part of the application root log. -->\r
+       <!-- <appender name="EELFServer" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${serverLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+               <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip </fileNamePattern>\r
+               <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy\r
+               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>\r
+               </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>\r
+               </appender> <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize> <appender-ref ref="EELFServer" /> </appender> -->\r
+\r
+       <!-- EELF Policy Appender. This appender is used to record Policy engine\r
+               related logging events. The Policy logger and appender are specializations\r
+               of the EELF application root logger and appender. This can be used to segregate\r
+               Policy engine events from other components, or it can be eliminated to record\r
+               these events as part of the application root log. -->\r
+       <!-- <appender name="EELFPolicy" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${policyLogName}.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+               <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip </fileNamePattern>\r
+               <minIndex>1</minIndex> <maxIndex>9</maxIndex> </rollingPolicy> <triggeringPolicy\r
+               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>5MB</maxFileSize>\r
+               </triggeringPolicy> <encoder> <pattern>${defaultPattern}</pattern> </encoder>\r
+               </appender> <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize> <appender-ref ref="EELFPolicy" /> </appender> -->\r
+\r
+       <!-- EELF Audit Appender. This appender is used to record audit engine related\r
+               logging events. The audit logger and appender are specializations of the\r
+               EELF application root logger and appender. This can be used to segregate\r
+               Policy engine events from other components, or it can be eliminated to record\r
+               these events as part of the application root log. -->\r
+\r
+       <appender name="EELFAudit"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${auditLogName}.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <!-- daily roll over -->\r
+                       <fileNamePattern>${logDirectory}/${auditLogName}.log.%d{yyyy-MM-dd}.zip\r
+                       </fileNamePattern>\r
+                       <maxHistory>30</maxHistory>\r
+               </rollingPolicy>\r
+               <encoder>\r
+                       <pattern>${auditLoggerPattern}</pattern>\r
+               </encoder>\r
+       </appender>\r
+       <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize>\r
+               <appender-ref ref="EELFAudit" />\r
+       </appender>\r
+\r
+       <appender name="EELFMetrics"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${metricsLogName}.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <!-- daily roll over -->\r
+                       <fileNamePattern>${logDirectory}/${metricsLogName}.log.%d{yyyy-MM-dd}.zip\r
+                       </fileNamePattern>\r
+                       <maxHistory>30</maxHistory>\r
+               </rollingPolicy>\r
+               <encoder>\r
+                       <pattern>${metricsLoggerPattern}</pattern>\r
+               </encoder>\r
+       </appender>\r
+\r
+\r
+       <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize>\r
+               <appender-ref ref="EELFMetrics" />\r
+       </appender>\r
+\r
+       <appender name="EELFError"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${logDirectory}/${errorLogName}.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <!-- daily roll over -->\r
+                       <fileNamePattern>${logDirectory}/${errorLogName}.log.%d{yyyy-MM-dd}.zip\r
+                       </fileNamePattern>\r
+                       <maxHistory>30</maxHistory>\r
+               </rollingPolicy>\r
+               <encoder>\r
+                       <pattern>${errorLoggerPattern}</pattern>\r
+               </encoder>\r
+       </appender>\r
+\r
+       <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize>\r
+               <appender-ref ref="EELFError" />\r
+       </appender>\r
+\r
+       <appender name="EELFDebug"\r
+               class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+               <file>${debugLogDirectory}/${debugLogName}.log</file>\r
+               <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+                       <!-- daily roll over -->\r
+                       <fileNamePattern>${logDirectory}/${debugLogName}.log.%d{yyyy-MM-dd}.zip\r
+                       </fileNamePattern>\r
+                       <maxHistory>30</maxHistory>\r
+               </rollingPolicy>\r
+               <encoder>\r
+                       <pattern>${defaultLoggerPattern}</pattern>\r
+               </encoder>\r
+       </appender>\r
+\r
+       <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">\r
+               <queueSize>256</queueSize>\r
+               <appender-ref ref="EELFDebug" />\r
+               <includeCallerData>true</includeCallerData>\r
+       </appender>\r
+\r
+\r
+       <!-- ============================================================================ -->\r
+       <!-- EELF loggers -->\r
+       <!-- ============================================================================ -->\r
+       <logger name="com.att.eelf" level="info" additivity="false">\r
+               <appender-ref ref="asyncEELF" />\r
+       </logger>\r
+\r
+       <!-- <logger name="com.att.eelf.security" level="info" additivity="false">\r
+               <appender-ref ref="asyncEELFSecurity" /> </logger> <logger name="com.att.eelf.perf"\r
+               level="info" additivity="false"> <appender-ref ref="asyncEELFPerformance"\r
+               /> </logger> <logger name="com.att.eelf.server" level="info" additivity="false">\r
+               <appender-ref ref="asyncEELFServer" /> </logger> <logger name="com.att.eelf.policy"\r
+               level="info" additivity="false"> <appender-ref ref="asyncEELFPolicy" /> </logger> -->\r
+\r
+       <logger name="com.att.eelf.audit" level="info" additivity="false">\r
+               <appender-ref ref="asyncEELFAudit" />\r
+       </logger>\r
+\r
+       <logger name="com.att.eelf.metrics" level="info" additivity="false">\r
+               <appender-ref ref="asyncEELFMetrics" />\r
+       </logger>\r
+\r
+       <logger name="com.att.eelf.error" level="info" additivity="false">\r
+               <appender-ref ref="asyncEELFError" />\r
+       </logger>\r
+\r
+       <logger name="com.att.eelf.debug" level="debug" additivity="false">\r
+               <appender-ref ref="asyncEELFDebug" />\r
+       </logger>\r
+\r
+       <root level="INFO">\r
+               <appender-ref ref="asyncEELF" />\r
+       </root>\r
+\r
+</configuration>\r
index 10bfa47..6981fb0 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 music.version = v2
 music.keyspace = keyspaces
 music.session.keyspace = portal
index f99b223..1760d5b 100755 (executable)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 authentication_server_url = http://{{.Values.global.portalHostName}}:8383/openid-connect-server-webapp/
 ecomp_openid_connect_client = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/openid_connect_login
 ecomp_redirect_uri = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/welcome.htm
index 7561e3a..088dbc1 100755 (executable)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # Not used by portal
 portal.api.impl.class = org.onap.portalsdk.core.onboarding.client.OnBoardingApiServiceImpl.not.used.by.portal
 portal.api.prefix = /api
index 109d8d2..c4a2760 100755 (executable)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 #mysql
 db.driver = org.mariadb.jdbc.Driver
 db.connectionURL = jdbc:mariadb:failover://portal-db:3306/portal
index 2465e03..1aa4c41 100644 (file)
@@ -1,19 +1,19 @@
-1. Get the application URL by running these commands:
-{{- if .Values.ingress.enabled }}
-{{- range .Values.ingress.hosts }}
-  http://{{ . }}
-{{- end }}
-{{- else if contains "NodePort" .Values.service.type }}
-  export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
-  export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
-  echo http://$NODE_IP:$NODE_PORT
-{{- else if contains "LoadBalancer" .Values.service.type }}
-     NOTE: It may take a few minutes for the LoadBalancer IP to be available.
-           You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
-  export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
-  echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
-{{- else if contains "ClusterIP" .Values.service.type }}
-  export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
-  echo "Visit http://127.0.0.1:8080 to use your application"
-  kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
-{{- end }}
+1. Get the application URL by running these commands:\r
+{{- if .Values.ingress.enabled }}\r
+{{- range .Values.ingress.hosts }}\r
+  http://{{ . }}\r
+{{- end }}\r
+{{- else if contains "NodePort" .Values.service.type }}\r
+  export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})\r
+  export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")\r
+  echo http://$NODE_IP:$NODE_PORT\r
+{{- else if contains "LoadBalancer" .Values.service.type }}\r
+     NOTE: It may take a few minutes for the LoadBalancer IP to be available.\r
+           You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'\r
+  export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')\r
+  echo http://$SERVICE_IP:{{ .Values.service.externalPort }}\r
+{{- else if contains "ClusterIP" .Values.service.type }}\r
+  export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")\r
+  echo "Visit http://127.0.0.1:8080 to use your application"\r
+  kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}\r
+{{- end }}\r
index cf3b6a5..178e91c 100644 (file)
@@ -17,5 +17,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onapportal
   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/deliveries/properties/ONAPPORTAL/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPPORTAL/*").AsConfig . | indent 2 }}
index c316450..6657f5f 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 3e53ed6..a38a44c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: Portal cassandra
 name: portal-cassandra
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 2451d6c..4fd368a 100644 (file)
@@ -1,3 +1,17 @@
+// Copyright © 2018 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.
+
 CREATE KEYSPACE IF NOT EXISTS portal
     WITH REPLICATION = {
         'class' : 'SimpleStrategy',
index 47ae6cc..4f6148e 100644 (file)
@@ -1,3 +1,17 @@
+// Copyright © 2018 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.
+
 CREATE KEYSPACE IF NOT EXISTS portalsdk
     WITH REPLICATION = {
         'class' : 'SimpleStrategy',
index c60c745..ee7a285 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index e0fec18..3f45468 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-docker-entry-initd
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
 {{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
 
index 6f3f23f..45bbaf1 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..252ca76 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..1deed4e 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 1217431..b404559 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 9c1fc43..c8a779e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index dd9ee92..78a7e28 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f6bd05f..1dcf0d8 100644 (file)
@@ -1,3 +1,20 @@
+/*
+# Copyright © 2018 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.
+
+*/
+
 USE portal;
 /*
 Any updates required by OOM to the portaldb are made here.
@@ -15,10 +32,10 @@ update fn_app set app_url = 'http://{{.Values.config.sdcFeHostName}}:{{.Values.c
 --pap => 8443:30219
 update fn_app set app_url = 'http://{{.Values.config.papHostName}}:{{.Values.config.papPort}}/onap/policy', app_rest_endpoint = 'http://pap:8443/onap/api/v2' where app_name = 'Policy';
 --vid => 8080:30200
-update fn_app set app_url = 'http://{{.Values.config.vidHostName}}:{{.Values.config.vidPort}}/vid/welcome.htm', app_rest_endpoint = 'http://vid:8080/vid/api/v2' where app_name = 'Virtual Infrastructure Deployment';
+update fn_app set app_url = 'https://{{.Values.config.vidHostName}}:{{.Values.config.vidPort}}/vid/welcome.htm', app_rest_endpoint = 'https://vid:8443/vid/api/v2' where app_name = 'Virtual Infrastructure Deployment';
 --sparky => TODO: sparky doesn't open a node port yet
 update fn_app set app_url = 'http://{{.Values.config.aaiSparkyHostName}}:{{.Values.config.aaiSparkyPort}}/services/aai/webapp/index.html#/viewInspect', app_rest_endpoint = 'http://aai-sparky-be.{{.Release.Namespace}}:9517/api/v2' where app_name = 'A&AI UI';
 --cli => 8080:30260
 update fn_app set app_url = 'http://{{.Values.config.cliHostName}}:{{.Values.config.cliPort}}/', app_type = 1 where app_name = 'CLI';
 --msb-discovery => 10081:30281  this is clearly incorrect
-update fn_app set app_url = 'http://{{.Values.config.msbDiscoveryHostName}}:{{.Values.config.msbDiscoveryPort}}/iui/microservices/default.html' where app_name = 'MSB';
\ No newline at end of file
+update fn_app set app_url = 'http://{{.Values.config.msbDiscoveryHostName}}:{{.Values.config.msbDiscoveryPort}}/iui/microservices/default.html' where app_name = 'MSB';
index c60c745..ee7a285 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index fcd325d..9a08da5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-mariadb
   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/mariadb/*").AsConfig . | indent 2 }}
 
index ffb9ef0..263aae4 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index b6eea90..515c521 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..252ca76 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..1deed4e 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 4d65c07..6598075 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2e0c0be..4580e56 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 0fb6c0e..9d77e53 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -43,7 +44,7 @@ config:
   papPort: "30219"
   # application's front end hostname.  Must be resolvable on the client side environment
   papHostName: "policy.api.simpledemo.onap.org"
-  # vid ui  assignment for port 8080
+  # vid ui  assignment for port 8443
   vidPort: "30200"
   # application's front end hostname.  Must be resolvable on the client side environment
   vidHostName: "vid.api.simpledemo.onap.org"
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 36125e6..155072c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: Portal software development kit
 name: portal-sdk
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 6508d3c..5c24429 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 # login settings
 login_method_backdoor       = backdoor
 login_method_attribute_name = login_method
@@ -32,4 +46,4 @@ business_direct_menu_set_name        = BD
 business_direct_menu_attribute_name  = businessDirectMenuData
 
 # Role settings
-sys_admin_role_id = 1
\ No newline at end of file
+sys_admin_role_id = 1
index d1465c5..85e1eed 100644 (file)
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ============LICENSE_START==========================================
-  ONAP Portal SDK
-  ===================================================================
-  Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-  ===================================================================
-
-  Unless otherwise specified, all software contained herein is licensed
-  under the Apache License, Version 2.0 (the “License”);
-  you may not use this software 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.
-
-  Unless otherwise specified, all documentation contained herein is licensed
-  under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
-  you may not use this documentation except in compliance with the License.
-  You may obtain a copy of the License at
-
-              https://creativecommons.org/licenses/by/4.0/
-
-  Unless required by applicable law or agreed to in writing, documentation
-  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="true">
-  <!--<jmxConfigurator /> -->
-  <!--  specify the component name -->
-  <property name="componentName" value="onapsdk"></property>
-  <!--  specify the base path of the log directory -->
-  <property name="logDirPrefix" value="/var/log/onap"></property>
-  <!-- The directories where logs are written -->
-  <property name="logDirectory" value="${logDirPrefix}/${componentName}" />
-  <!-- Can easily relocate debug logs by modifying this path. -->
-  <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />
-  <!--  log file names -->
-  <property name="generalLogName" value="application" />
-  <property name="errorLogName" value="error" />
-  <property name="metricsLogName" value="metrics" />
-  <property name="auditLogName" value="audit" />
-  <property name="debugLogName" value="debug" />
-  <!--
-  These loggers are not used in code (yet).
-  <property name="securityLogName" value="security" /><property name="policyLogName" value="policy" /><property name="performanceLogName" value="performance" /><property name="serverLogName" value="server" />
-   -->
-  <!-- 1610 Logging Fields Format Revisions -->
-  <property name="auditLoggerPattern" value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-  <property name="metricsLoggerPattern" value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
-  <property name="errorLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
-  <property name="defaultLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />
-  <!-- use %class so library logging calls yield their class name -->
-  <property name="applicationLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />
-  <!-- Example evaluator filter applied against console appender -->
-  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-    <encoder>
-      <pattern>${defaultLoggerPattern}</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>
-    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-      <!-- daily rollover -->
-      <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-      <!-- keep 30 days' worth of history capped at 3GB total size -->
-      <maxHistory>30</maxHistory>
-      <totalSizeCap>3GB</totalSizeCap>
-    </rollingPolicy>
-    <encoder>
-      <pattern>${applicationLoggerPattern}</pattern>
-    </encoder>
-    <filter class="org.onap.portalapp.util.CustomLoggingFilter" />
-  </appender>
-  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <!-- Class name is part of caller data -->
-    <includeCallerData>true</includeCallerData>
-    <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.TimeBasedRollingPolicy">
-      <!-- daily rollover -->
-      <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-      <!-- keep 30 days' worth of history capped at 3GB total size -->
-      <maxHistory>30</maxHistory>
-      <totalSizeCap>3GB</totalSizeCap>
-    </rollingPolicy>
-    <encoder>
-      <pattern>${auditLoggerPattern}</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.TimeBasedRollingPolicy">
-      <!-- daily rollover -->
-      <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-      <!-- keep 30 days' worth of history capped at 3GB total size -->
-      <maxHistory>30</maxHistory>
-      <totalSizeCap>3GB</totalSizeCap>
-    </rollingPolicy>
-    <encoder>
-      <pattern>${metricsLoggerPattern}</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>
-    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-      <!-- daily rollover -->
-      <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-      <!-- keep 30 days' worth of history capped at 3GB total size -->
-      <maxHistory>30</maxHistory>
-      <totalSizeCap>3GB</totalSizeCap>
-    </rollingPolicy>
-    <encoder>
-      <pattern>${errorLoggerPattern}</pattern>
-    </encoder>
-  </appender>
-  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="EELFError"/>
-  </appender>
-  <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${debugLogDirectory}/${debugLogName}.log</file>
-    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-      <!-- daily rollover -->
-      <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
-      <!-- keep 30 days' worth of history capped at 3GB total size -->
-      <maxHistory>30</maxHistory>
-      <totalSizeCap>3GB</totalSizeCap>
-    </rollingPolicy>
-    <encoder>
-      <pattern>${defaultLoggerPattern}</pattern>
-    </encoder>
-  </appender>
-  <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="EELFDebug" />
-  </appender>
-  <logger name="org.onap.eelf" level="info" additivity="false">
-    <appender-ref ref="asyncEELF" />
-  </logger>
-  <logger name="org.onap.eelf.audit" level="info" additivity="false">
-    <appender-ref ref="asyncEELFAudit" />
-  </logger>
-  <logger name="org.onap.eelf.debug" level="debug" additivity="false">
-    <appender-ref ref="asyncEELFDebug" />
-  </logger>
-  <logger name="org.onap.eelf.error" level="info" additivity="false">
-    <appender-ref ref="asyncEELFError" />
-  </logger>
-  <logger name="org.onap.eelf.metrics" level="info" additivity="false">
-    <appender-ref ref="asyncEELFMetrics" />
-  </logger>
-  <root level="DEBUG">
-    <appender-ref ref="asyncEELF" />
-  </root>
-</configuration>
+<?xml version="1.0" encoding="UTF-8"?>\r
+<!--\r
+  ============LICENSE_START==========================================\r
+  ONAP Portal SDK\r
+  ===================================================================\r
+  Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
+  Modifications Copyright © 2018 Amdocs, Bell Canada\r
+\r
+  ===================================================================\r
+\r
+  Unless otherwise specified, all software contained herein is licensed\r
+  under the Apache License, Version 2.0 (the “License”);\r
+  you may not use this software except in compliance with the License.\r
+  You may obtain a copy of the License at\r
+\r
+              http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+  Unless required by applicable law or agreed to in writing, software\r
+  distributed under the License is distributed on an "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+  See the License for the specific language governing permissions and\r
+  limitations under the License.\r
+\r
+  Unless otherwise specified, all documentation contained herein is licensed\r
+  under the Creative Commons License, Attribution 4.0 Intl. (the “License”);\r
+  you may not use this documentation except in compliance with the License.\r
+  You may obtain a copy of the License at\r
+\r
+              https://creativecommons.org/licenses/by/4.0/\r
+\r
+  Unless required by applicable law or agreed to in writing, documentation\r
+  distributed under the License is distributed on an "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+  See the License for the specific language governing permissions and\r
+  limitations under the License.\r
+\r
+  ============LICENSE_END============================================\r
+\r
+  -->\r
+<configuration scan="true" scanPeriod="3 seconds" debug="true">\r
+  <!--<jmxConfigurator /> -->\r
+  <!--  specify the component name -->\r
+  <property name="componentName" value="onapsdk"></property>\r
+  <!--  specify the base path of the log directory -->\r
+  <property name="logDirPrefix" value="/var/log/onap"></property>\r
+  <!-- The directories where logs are written -->\r
+  <property name="logDirectory" value="${logDirPrefix}/${componentName}" />\r
+  <!-- Can easily relocate debug logs by modifying this path. -->\r
+  <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />\r
+  <!--  log file names -->\r
+  <property name="generalLogName" value="application" />\r
+  <property name="errorLogName" value="error" />\r
+  <property name="metricsLogName" value="metrics" />\r
+  <property name="auditLogName" value="audit" />\r
+  <property name="debugLogName" value="debug" />\r
+  <!--\r
+  These loggers are not used in code (yet).\r
+  <property name="securityLogName" value="security" /><property name="policyLogName" value="policy" /><property name="performanceLogName" value="performance" /><property name="serverLogName" value="server" />\r
+   -->\r
+  <!-- 1610 Logging Fields Format Revisions -->\r
+  <property name="auditLoggerPattern" value="%X{AuditLogBeginTimestamp}|%X{AuditLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />\r
+  <property name="metricsLoggerPattern" value="%X{MetricsLogBeginTimestamp}|%X{MetricsLogEndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVisualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />\r
+  <property name="errorLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ClassName}|%X{AlertSeverity}|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />\r
+  <property name="defaultLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ClassName}| %msg%n" />\r
+  <!-- use %class so library logging calls yield their class name -->\r
+  <property name="applicationLoggerPattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%class{36}| %msg%n" />\r
+  <!-- Example evaluator filter applied against console appender -->\r
+  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">\r
+    <encoder>\r
+      <pattern>${defaultLoggerPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <!-- ============================================================================ -->\r
+  <!-- EELF Appenders -->\r
+  <!-- ============================================================================ -->\r
+  <!-- The EELFAppender is used to record events to the general application\r
+    log -->\r
+  <appender name="EELF" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${generalLogName}.log</file>\r
+    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+      <!-- daily rollover -->\r
+      <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>\r
+      <!-- keep 30 days' worth of history capped at 3GB total size -->\r
+      <maxHistory>30</maxHistory>\r
+      <totalSizeCap>3GB</totalSizeCap>\r
+    </rollingPolicy>\r
+    <encoder>\r
+      <pattern>${applicationLoggerPattern}</pattern>\r
+    </encoder>\r
+    <filter class="org.onap.portalapp.util.CustomLoggingFilter" />\r
+  </appender>\r
+  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <!-- Class name is part of caller data -->\r
+    <includeCallerData>true</includeCallerData>\r
+    <appender-ref ref="EELF" />\r
+  </appender>\r
+  <!-- EELF Security Appender. This appender is used to record security events\r
+    to the security log file. Security events are separate from other loggers\r
+    in EELF so that security log records can be captured and managed in a secure\r
+    way separate from the other logs. This appender is set to never discard any\r
+    events. -->\r
+  <!--\r
+  <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\r
+      </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>\r
+   -->\r
+  <!-- EELF Performance Appender. This appender is used to record performance\r
+    records. -->\r
+  <!--\r
+  <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\r
+      </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>\r
+  -->\r
+  <!-- EELF Server Appender. This appender is used to record Server related\r
+    logging events. The Server logger and appender are specializations of the\r
+    EELF application root logger and appender. This can be used to segregate Server\r
+    events from other components, or it can be eliminated to record these events\r
+    as part of the application root log. -->\r
+  <!--\r
+  <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\r
+      </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>\r
+   -->\r
+  <!-- EELF Policy Appender. This appender is used to record Policy engine\r
+    related logging events. The Policy logger and appender are specializations\r
+    of the EELF application root logger and appender. This can be used to segregate\r
+    Policy engine events from other components, or it can be eliminated to record\r
+    these events as part of the application root log. -->\r
+  <!--\r
+  <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\r
+      </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>\r
+  -->\r
+  <!-- EELF Audit Appender. This appender is used to record audit engine\r
+    related logging events. The audit logger and appender are specializations\r
+    of the EELF application root logger and appender. This can be used to segregate\r
+    Policy engine events from other components, or it can be eliminated to record\r
+    these events as part of the application root log. -->\r
+  <appender name="EELFAudit" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${auditLogName}.log</file>\r
+    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+      <!-- daily rollover -->\r
+      <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>\r
+      <!-- keep 30 days' worth of history capped at 3GB total size -->\r
+      <maxHistory>30</maxHistory>\r
+      <totalSizeCap>3GB</totalSizeCap>\r
+    </rollingPolicy>\r
+    <encoder>\r
+      <pattern>${auditLoggerPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFAudit" />\r
+  </appender>\r
+  <appender name="EELFMetrics" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${metricsLogName}.log</file>\r
+    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+      <!-- daily rollover -->\r
+      <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>\r
+      <!-- keep 30 days' worth of history capped at 3GB total size -->\r
+      <maxHistory>30</maxHistory>\r
+      <totalSizeCap>3GB</totalSizeCap>\r
+    </rollingPolicy>\r
+    <encoder>\r
+      <pattern>${metricsLoggerPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFMetrics"/>\r
+  </appender>\r
+  <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${errorLogName}.log</file>\r
+    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+      <!-- daily rollover -->\r
+      <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>\r
+      <!-- keep 30 days' worth of history capped at 3GB total size -->\r
+      <maxHistory>30</maxHistory>\r
+      <totalSizeCap>3GB</totalSizeCap>\r
+    </rollingPolicy>\r
+    <encoder>\r
+      <pattern>${errorLoggerPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFError"/>\r
+  </appender>\r
+  <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${debugLogDirectory}/${debugLogName}.log</file>\r
+    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
+      <!-- daily rollover -->\r
+      <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.log.zip</fileNamePattern>\r
+      <!-- keep 30 days' worth of history capped at 3GB total size -->\r
+      <maxHistory>30</maxHistory>\r
+      <totalSizeCap>3GB</totalSizeCap>\r
+    </rollingPolicy>\r
+    <encoder>\r
+      <pattern>${defaultLoggerPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFDebug" />\r
+  </appender>\r
+  <logger name="org.onap.eelf" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELF" />\r
+  </logger>\r
+  <logger name="org.onap.eelf.audit" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFAudit" />\r
+  </logger>\r
+  <logger name="org.onap.eelf.debug" level="debug" additivity="false">\r
+    <appender-ref ref="asyncEELFDebug" />\r
+  </logger>\r
+  <logger name="org.onap.eelf.error" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFError" />\r
+  </logger>\r
+  <logger name="org.onap.eelf.metrics" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFMetrics" />\r
+  </logger>\r
+  <root level="DEBUG">\r
+    <appender-ref ref="asyncEELF" />\r
+  </root>\r
+</configuration>\r
index b177976..8881cc2 100644 (file)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 music.version = v2
 music.keyspace = keyspaces
 music.session.keyspace = portalsdk
index f161609..e9d1c93 100755 (executable)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 # Properties read by ECOMP Framework library, ecompFW.jar
 
 ##########################################################################
index 2d92cd3..3bbb1a7 100755 (executable)
@@ -1,3 +1,18 @@
+# Copyright © 2018 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.
+
+
 # Properties read by ECOMP Core library, ecompSDK-core.jar
 
 ##########################################################################
index 0878f5c..496dd8d 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index d1978c5..bce6896 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onapportalsdk
   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/deliveries/properties/ONAPPORTALSDK/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPPORTALSDK/*").AsConfig . | indent 2 }}
index 2d74aae..c6aa978 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 7cd0560..0629ea0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 928c0a3..e7de8d0 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index e2b4a3c..c2f8a91 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: Portal widgets micro service application
 name: portal-widget
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 60cc1db..a53dd2e 100644 (file)
@@ -1,33 +1,33 @@
-## General App Properties
-server.contextPath=/widget
-server.port=8082
-spring.http.multipart.max-file-size=128MB
-spring.http.multipart.max-request-size=128MB
-microservice.widget.location=/tmp
-
-## App DB Properties
-spring.datasource.url=jdbc:mysql://portal-db:3306/portal
-spring.datasource.username=root
-spring.datasource.password=Aa123456
-spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
-spring.database.driver.classname=org.mariadb.jdbc.Driver
-spring.jpa.show-sql=false
-spring.jpa.properties.hibernate.format_sql=false
-
-## Basic Authentication Properties
-security.user.name=widget_user
-security.user.password=ENC(IjywcRnI9+nuVEh9+OFFiRWAjBT1n718)
-
-initialization.default.widgets=true
-initialization.widgetData.url=http://portal-app:{{.Values.global.portalPort}}/ONAPPORTAL/commonWidgets
-
-## Account Basic Authentication Properties
-account.user.name=portal
-account.user.password=6APqvG4AU2rfLgCvMdySwQ==
-
-## Certificate Properties
-#server.ssl.key-store=classpath:widget-keystore.p12
-#server.ssl.key-store-password=ENC(DiIYnAMab4u7rEW2yKhF9zBL00uU55q8)
-#server.ssl.keyStoreType=PKCS12
-#server.ssl.keyAlias=widget-microservice
-
+## General App Properties\r
+server.contextPath=/widget\r
+server.port=8082\r
+spring.http.multipart.max-file-size=128MB\r
+spring.http.multipart.max-request-size=128MB\r
+microservice.widget.location=/tmp\r
+\r
+## App DB Properties\r
+spring.datasource.url=jdbc:mysql://portal-db:3306/portal\r
+spring.datasource.username=root\r
+spring.datasource.password=Aa123456\r
+spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect\r
+spring.database.driver.classname=org.mariadb.jdbc.Driver\r
+spring.jpa.show-sql=false\r
+spring.jpa.properties.hibernate.format_sql=false\r
+\r
+## Basic Authentication Properties\r
+security.user.name=widget_user\r
+security.user.password=ENC(IjywcRnI9+nuVEh9+OFFiRWAjBT1n718)\r
+\r
+initialization.default.widgets=true\r
+initialization.widgetData.url=http://portal-app:{{.Values.global.portalPort}}/ONAPPORTAL/commonWidgets\r
+\r
+## Account Basic Authentication Properties\r
+account.user.name=portal\r
+account.user.password=6APqvG4AU2rfLgCvMdySwQ==\r
+\r
+## Certificate Properties\r
+#server.ssl.key-store=classpath:widget-keystore.p12\r
+#server.ssl.key-store-password=ENC(DiIYnAMab4u7rEW2yKhF9zBL00uU55q8)\r
+#server.ssl.keyStoreType=PKCS12\r
+#server.ssl.keyAlias=widget-microservice\r
+\r
index d655bc9..087c93f 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 jasypt:
   encryptor:
     password: EncryptionKey
index 0878f5c..496dd8d 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 23707f9..6779c28 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-onapwidgetms
   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/deliveries/properties/ONAPWIDGETMS/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPWIDGETMS/*").AsConfig . | indent 2 }}
index 6eafd7a..bc673e5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 75d4a14..be573d3 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f4c9735..f97beb6 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 67bf176..4deb608 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: Zookeeper for ONAP Portal
 name: portal-zookeeper
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index c60c745..ee7a285 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index cf93f6b..63632ef 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 2e0c0be..4580e56 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e624511..51bb0c5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e64b1e2..a656d39 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 FROM boxfuse/flyway:5.0.7-alpine
 
 ARG branch=2.0.0-ONAP
index 32a634a..8e9ccb4 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 #!/bin/sh -x
 SQL_DEST_DIR=${SQL_DEST_DIR:-/tmp/sql}
 DB_PORT=${DB_PORT:-3306}
index 1e8f788..204a775 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index 0bc14ea..400b8df 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 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.
+
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index 8eea191..0c67732 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: portal-filebeat
   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/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
 
index ebbfbc3..ac575b3 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -45,4 +46,4 @@ zookeeper:
 
 messageRouter:
   service:
-    name: message-router
\ No newline at end of file
+    name: message-router
index f5e4398..c4124c2 100755 (executable)
@@ -1,4 +1,18 @@
-#!/bin/bash -x
+# 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
 
 #
 # Execute tags built to support the hands on demo,
@@ -152,6 +166,8 @@ do
        esac
 done
 
+set -x
+
 ETEHOME=/var/opt/OpenECOMP_ETE
 VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
 POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
index b1a7283..22b83e8 100755 (executable)
@@ -1,3 +1,17 @@
+# 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
 
 #
 # Note: Do not run multiple concurrent ete.sh as the --display is not parameterized and tests will collide
 #
 if [ "$1" == "" ] || [ "$2" == "" ]; then
-   echo "Usage: ete-k8s.sh [namespace] [ health | ete | closedloop | instantiate | distribute ]"
+   echo "Usage: ete-k8s.sh [namespace] [ health | ete | closedloop | instantiate | distribute | portal ]"
    exit
 fi
 
+set -x
 
 export NAMESPACE="$1"
 
index 17f33fc..a857e83 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 GLOBAL_PRELOAD_PARAMETERS = {
     # heat template parameter values common to all heat template continaing these parameters
      "defaults" : {
index 74f83ad..9111644 100644 (file)
@@ -1,3 +1,17 @@
+# 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.
+
 # 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 = "demo@people.osaaf.org"
@@ -12,7 +26,7 @@ GLOBAL_APPC_SERVER_PROTOCOL = "http"
 GLOBAL_APPC_SERVER_PORT = "8282"
 GLOBAL_APPC_SERVER = "http://appc.{{include "common.namespace" .}}:"
 GLOBAL_APPC_USERNAME = "admin"
-GLOBAL_APPC_PASSWORD = "admin"
+GLOBAL_APPC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
 GLOBAL_APPC_CDT_SERVER_PROTOCOL = "http"
 GLOBAL_APPC_CDT_SERVER_PORT = "80"
 GLOBAL_APPC_CDT_SERVER = "http://appc-cdt.{{include "common.namespace" .}}:"
@@ -38,6 +52,11 @@ GLOBAL_DCAE_SERVER_PROTOCOL = "http"
 GLOBAL_DCAE_HEALTH_SERVER_PORT = "80"
 GLOBAL_DCAE_USERNAME = "console"
 GLOBAL_DCAE_PASSWORD = "ZjJkYjllMjljMTI2M2Iz"
+# 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"
 # DROOL server port and credentials
 GLOBAL_DROOLS_SERVER_PORT = "9696"
 GLOBAL_DROOLS_USERNAME = "@1b3rt"
@@ -56,8 +75,20 @@ GLOBAL_MR_SERVER_PORT = "3904"
 # mso info - everything is from the private oam network (also called onap private network)
 GLOBAL_MSO_SERVER_PROTOCOL = "http"
 GLOBAL_MSO_SERVER_PORT = "8080"
+
+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_USERNAME = "InfraPortalClient"
+GLOBAL_MSO_CATDB_USERNAME = "bpel"
 GLOBAL_MSO_PASSWORD = "password1$"
+
 # music info - everything is from the private oam network (also called onap private network)
 GLOBAL_MUSIC_SERVER_PROTOCOL = "http"
 GLOBAL_MUSIC_SERVER_PORT = "8080"
@@ -74,7 +105,7 @@ 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 = "http"
+GLOBAL_POLICY_SERVER_PROTOCOL = "https"
 GLOBAL_POLICY_SERVER_PORT = "8081"
 GLOBAL_POLICY_HEALTHCHECK_PORT = "6969"
 GLOBAL_POLICY_AUTH = "dGVzdHBkcDphbHBoYTEyMw=="
@@ -97,8 +128,8 @@ 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 = "http"
-GLOBAL_VID_SERVER_PORT = "8080"
+GLOBAL_VID_SERVER_PROTOCOL = "https"
+GLOBAL_VID_SERVER_PORT = "8443"
 GLOBAL_VID_USERNAME = "demo"
 GLOBAL_VID_PASSWORD = "Kp8bJ4SXszM0WX"
 GLOBAL_VID_HEALTH_USERNAME = "Default"
@@ -113,3 +144,4 @@ GLOBAL_PROXY_WARNING_CONTINUE_XPATH=""
 GLOBAL_DNS_TRAFFIC_DURATION = "600"
 # location where heat templates are loaded from
 GLOBAL_HEAT_TEMPLATES_FOLDER = "/var/opt/OpenECOMP_ETE/demo/heat"
+
index 06405ce..4ae8124 100644 (file)
@@ -1,3 +1,17 @@
+# 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" .}}"
@@ -10,6 +24,8 @@ 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_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"
@@ -18,7 +34,6 @@ 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_KEYSTONE = "{{ .Values.openStackKeyStoneUrl }}"
 GLOBAL_INJECTED_MR_IP_ADDR = "message-router.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_MSO_IP_ADDR = "so.{{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 }}"
@@ -30,6 +45,7 @@ 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_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 }}"
@@ -45,7 +61,15 @@ 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_UBUNTU_1404_IMAGE = "{{ .Values.ubuntu14Image }}"
 GLOBAL_INJECTED_UBUNTU_1604_IMAGE = "{{ .Values.ubuntu16Image }}"
 GLOBAL_INJECTED_VM_IMAGE_NAME = "{{ .Values.ubuntu14Image }}"
@@ -64,6 +88,8 @@ GLOBAL_INJECTED_PROPERTIES = {
     "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_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",
@@ -72,7 +98,6 @@ GLOBAL_INJECTED_PROPERTIES = {
     "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_MSO_IP_ADDR" : "so.{{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 }}",
@@ -84,6 +109,7 @@ GLOBAL_INJECTED_PROPERTIES = {
     "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_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 }}",
@@ -99,7 +125,15 @@ GLOBAL_INJECTED_PROPERTIES = {
     "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_UBUNTU_1404_IMAGE" : "{{.Values.ubuntu14Image}}",
     "GLOBAL_INJECTED_UBUNTU_1604_IMAGE" : "{{.Values.ubuntu16Image}}",
     "GLOBAL_INJECTED_VM_IMAGE_NAME" : "{{ .Values.ubuntu14Image }}",
index 91d8ed4..07d876d 100644 (file)
@@ -1,3 +1,9 @@
+# Copyright © 2018 Amdocs, Bell Canada
+#
+# This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+#
+# Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 3b07602..cebc7f5 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 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.
old mode 100644 (file)
new mode 100755 (executable)
index 8a28e89..2951b60
@@ -22,7 +22,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/testsuite:1.2.1
+image: onap/testsuite:1.3.1-STAGING-latest
 pullPolicy: Always
 
 ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
@@ -35,6 +35,9 @@ debugEnabled: false
 #################################################################
 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.2.0-SNAPSHOT"
@@ -147,4 +150,4 @@ persistence:
   accessMode: ReadWriteMany
   size: 2Gi
   mountPath: /dockerdata-nfs
-  mountSubPath: robot/logs
\ No newline at end of file
+  mountSubPath: robot/logs
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 92e836f..020c8d2 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 9f8bfd5..cb18777 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Backend API
 name: sdc-be
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 4d508e3..0f044d7 100644 (file)
-<?xml version="1.0" encoding="utf-8"?>\r
-<configuration scan="true" scanPeriod="3 seconds">\r
-    <property name="logDir" value="/var/log/onap" />\r
-    <property name="componentName" scope="system" value="sdc"></property>\r
-    <property name="subComponentName" scope="system" value="sdc-be"></property>\r
-    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
-    <property file="${config.home}/catalog-be/configuration.yaml" />\r
-    <property name="enable-all-log" scope="context" value="false" />\r
-    <!--  log file names -->\r
-    <property name="errorLogName" value="error" />\r
-    <property name="metricsLogName" value="metrics" />\r
-    <property name="auditLogName" value="audit" />\r
-    <property name="debugLogName" value="debug" />\r
-    <property name="transactionLogName" value="transaction" />\r
-    <property name="allLogName" value="all" />\r
-    <property name="queueSize" value="256" />\r
-    <property name="maxFileSize" value="50MB" />\r
-    <property name="maxHistory" value="30" />\r
-    <property name="totalSizeCap" value="10GB" />\r
-    <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />\r
-    <!-- All log -->\r
-    <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
-        <then>\r
-            <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ALL_ROLLING">\r
-                <file>${logDirectory}/${allLogName}.log</file>\r
-                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
-                    <fileNamePattern>${logDirectory}/${allLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
-                    <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
-                        <maxFileSize>${maxFileSize}</maxFileSize>\r
-                    </timeBasedFileNamingAndTriggeringPolicy>\r
-                    <maxHistory>${maxHistory}</maxHistory>\r
-                    <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
-                </rollingPolicy>\r
-                <encoder>\r
-                    <pattern>${pattern}</pattern>\r
-                </encoder>\r
-            </appender>\r
-            <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">\r
-                <appender-ref ref="ALL_ROLLING" />\r
-            </appender>\r
-        </then>\r
-    </if>\r
-    <!-- Error log -->\r
-    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR_ROLLING">\r
-        <file>${logDirectory}/${errorLogName}.log</file>\r
-        <!-- Audit messages filter - deny audit messages -->\r
-        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
-            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
-                <marker>AUDIT_MARKER</marker>\r
-            </evaluator>\r
-            <onMismatch>NEUTRAL</onMismatch>\r
-            <onMatch>DENY</onMatch>\r
-        </filter>\r
-        <!-- Transaction messages filter - deny Transaction messages -->\r
-        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
-            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
-                <marker>TRANSACTION_MARKER</marker>\r
-            </evaluator>\r
-            <onMismatch>NEUTRAL</onMismatch>\r
-            <onMatch>DENY</onMatch>\r
-        </filter>\r
-        <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->\r
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
-            <level>INFO</level>\r
-        </filter>\r
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
-            <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
-                <maxFileSize>${maxFileSize}</maxFileSize>\r
-            </timeBasedFileNamingAndTriggeringPolicy>\r
-            <maxHistory>${maxHistory}</maxHistory>\r
-            <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
-        </rollingPolicy>\r
-        <encoder>\r
-            <pattern>${pattern}</pattern>\r
-        </encoder>\r
-    </appender>\r
-    <!-- Debug log -->\r
-    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG_ROLLING">\r
-        <file>${logDirectory}/${debugLogName}.log</file>\r
-        <!-- No need to deny audit messages - they are INFO only, will be denied \r
-                        anyway -->\r
-        <!-- Transaction messages filter - deny Transaction messages, there are \r
-                        some DEBUG level messages among them -->\r
-        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
-            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
-                <marker>TRANSACTION_MARKER</marker>\r
-            </evaluator>\r
-            <onMismatch>NEUTRAL</onMismatch>\r
-            <onMatch>DENY</onMatch>\r
-        </filter>\r
-        <!-- accept DEBUG and TRACE level -->\r
-        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
-            <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">\r
-                <expression>e.level.toInt() &lt;= DEBUG.toInt()</expression>\r
-            </evaluator>\r
-            <OnMismatch>DENY</OnMismatch>\r
-            <OnMatch>NEUTRAL</OnMatch>\r
-        </filter>\r
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
-            <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
-                <maxFileSize>${maxFileSize}</maxFileSize>\r
-            </timeBasedFileNamingAndTriggeringPolicy>\r
-            <maxHistory>${maxHistory}</maxHistory>\r
-            <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
-        </rollingPolicy>\r
-        <encoder>\r
-            <pattern>${pattern}</pattern>\r
-        </encoder>\r
-    </appender>\r
-    <!-- Audit log -->\r
-    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT_ROLLING">\r
-        <file>${logDirectory}/${auditLogName}.log</file>\r
-        <!-- Audit messages filter - accept audit messages -->\r
-        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
-            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
-                <marker>AUDIT_MARKER</marker>\r
-            </evaluator>\r
-            <onMismatch>DENY</onMismatch>\r
-            <onMatch>ACCEPT</onMatch>\r
-        </filter>\r
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
-            <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
-                <maxFileSize>${maxFileSize}</maxFileSize>\r
-            </timeBasedFileNamingAndTriggeringPolicy>\r
-            <maxHistory>${maxHistory}</maxHistory>\r
-            <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
-        </rollingPolicy>\r
-        <encoder>\r
-            <pattern>${pattern}</pattern>\r
-        </encoder>\r
-    </appender>\r
-    <!-- SdncTransaction log -->\r
-    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="TRANSACTION_ROLLING">\r
-        <file>${logDirectory}/${transactionLogName}.log</file>\r
-        <!-- Transaction messages filter - accept audit messages -->\r
-        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
-            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
-                <marker>TRANSACTION_MARKER</marker>\r
-            </evaluator>\r
-            <onMismatch>DENY</onMismatch>\r
-            <onMatch>ACCEPT</onMatch>\r
-        </filter>\r
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
-            <fileNamePattern>${logDirectory}/${transactionLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
-                <maxFileSize>${maxFileSize}</maxFileSize>\r
-            </timeBasedFileNamingAndTriggeringPolicy>\r
-            <maxHistory>${maxHistory}</maxHistory>\r
-            <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
-        </rollingPolicy>\r
-        <encoder>\r
-            <pattern>${pattern}</pattern>\r
-        </encoder>\r
-    </appender>\r
-    <!-- Asynchronicity Configurations -->\r
-    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">\r
-        <queueSize>${queueSize}</queueSize>\r
-        <appender-ref ref="DEBUG_ROLLING" />\r
-    </appender>\r
-    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">\r
-        <queueSize>${queueSize}</queueSize>\r
-        <appender-ref ref="TRANSACTION_ROLLING" />\r
-    </appender>\r
-    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">\r
-        <queueSize>${queueSize}</queueSize>\r
-        <appender-ref ref="ERROR_ROLLING" />\r
-    </appender>\r
-    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">\r
-        <queueSize>${queueSize}</queueSize>\r
-        <appender-ref ref="AUDIT_ROLLING" />\r
-    </appender>\r
-    <root level="INFO">\r
-        <appender-ref ref="ASYNC_ERROR" />\r
-        <appender-ref ref="ASYNC_DEBUG" />\r
-        <appender-ref ref="ASYNC_AUDIT" />\r
-        <appender-ref ref="ASYNC_TRANSACTION" />\r
-        <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
-            <then>\r
-                <appender-ref ref="ALL_ROLLING" />\r
-            </then>\r
-        </if>\r
-    </root>\r
-    <logger level="INFO" name="org.openecomp.sdc" />\r
-</configuration>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+# 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.
+-->
+<configuration scan="true" scanPeriod="3 seconds">
+    <property name="logDir" value="/var/log/onap" />
+    <property name="componentName" scope="system" value="sdc"></property>
+    <property name="subComponentName" scope="system" value="sdc-be"></property>
+    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+    <property file="${config.home}/catalog-be/configuration.yaml" />
+    <property name="enable-all-log" scope="context" value="false" />
+    <!--  log file names -->
+    <property name="errorLogName" value="error" />
+    <property name="metricsLogName" value="metrics" />
+    <property name="auditLogName" value="audit" />
+    <property name="debugLogName" value="debug" />
+    <property name="transactionLogName" value="transaction" />
+    <property name="allLogName" value="all" />
+    <property name="queueSize" value="256" />
+    <property name="maxFileSize" value="50MB" />
+    <property name="maxHistory" value="30" />
+    <property name="totalSizeCap" value="10GB" />
+    <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+    <!-- All log -->
+    <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+        <then>
+            <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ALL_ROLLING">
+                <file>${logDirectory}/${allLogName}.log</file>
+                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+                    <fileNamePattern>${logDirectory}/${allLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+                    <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                        <maxFileSize>${maxFileSize}</maxFileSize>
+                    </timeBasedFileNamingAndTriggeringPolicy>
+                    <maxHistory>${maxHistory}</maxHistory>
+                    <totalSizeCap>${totalSizeCap}</totalSizeCap>
+                </rollingPolicy>
+                <encoder>
+                    <pattern>${pattern}</pattern>
+                </encoder>
+            </appender>
+            <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">
+                <appender-ref ref="ALL_ROLLING" />
+            </appender>
+        </then>
+    </if>
+    <!-- Error log -->
+    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR_ROLLING">
+        <file>${logDirectory}/${errorLogName}.log</file>
+        <!-- Audit messages filter - deny audit messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>AUDIT_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+        <!-- Transaction messages filter - deny Transaction messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+        <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>INFO</level>
+        </filter>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>${maxFileSize}</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <maxHistory>${maxHistory}</maxHistory>
+            <totalSizeCap>${totalSizeCap}</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${pattern}</pattern>
+        </encoder>
+    </appender>
+    <!-- Debug log -->
+    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG_ROLLING">
+        <file>${logDirectory}/${debugLogName}.log</file>
+        <!-- No need to deny audit messages - they are INFO only, will be denied 
+                        anyway -->
+        <!-- Transaction messages filter - deny Transaction messages, there are 
+                        some DEBUG level messages among them -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+        <!-- accept DEBUG and TRACE level -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+                <expression>e.level.toInt() &lt;= DEBUG.toInt()</expression>
+            </evaluator>
+            <OnMismatch>DENY</OnMismatch>
+            <OnMatch>NEUTRAL</OnMatch>
+        </filter>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>${maxFileSize}</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <maxHistory>${maxHistory}</maxHistory>
+            <totalSizeCap>${totalSizeCap}</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${pattern}</pattern>
+        </encoder>
+    </appender>
+    <!-- Audit log -->
+    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT_ROLLING">
+        <file>${logDirectory}/${auditLogName}.log</file>
+        <!-- Audit messages filter - accept audit messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>AUDIT_MARKER</marker>
+            </evaluator>
+            <onMismatch>DENY</onMismatch>
+            <onMatch>ACCEPT</onMatch>
+        </filter>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>${maxFileSize}</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <maxHistory>${maxHistory}</maxHistory>
+            <totalSizeCap>${totalSizeCap}</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${pattern}</pattern>
+        </encoder>
+    </appender>
+    <!-- SdncTransaction log -->
+    <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="TRANSACTION_ROLLING">
+        <file>${logDirectory}/${transactionLogName}.log</file>
+        <!-- Transaction messages filter - accept audit messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>DENY</onMismatch>
+            <onMatch>ACCEPT</onMatch>
+        </filter>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/${transactionLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>${maxFileSize}</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <maxHistory>${maxHistory}</maxHistory>
+            <totalSizeCap>${totalSizeCap}</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${pattern}</pattern>
+        </encoder>
+    </appender>
+    <!-- Asynchronicity Configurations -->
+    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">
+        <queueSize>${queueSize}</queueSize>
+        <appender-ref ref="DEBUG_ROLLING" />
+    </appender>
+    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">
+        <queueSize>${queueSize}</queueSize>
+        <appender-ref ref="TRANSACTION_ROLLING" />
+    </appender>
+    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">
+        <queueSize>${queueSize}</queueSize>
+        <appender-ref ref="ERROR_ROLLING" />
+    </appender>
+    <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">
+        <queueSize>${queueSize}</queueSize>
+        <appender-ref ref="AUDIT_ROLLING" />
+    </appender>
+    <root level="INFO">
+        <appender-ref ref="ASYNC_ERROR" />
+        <appender-ref ref="ASYNC_DEBUG" />
+        <appender-ref ref="ASYNC_AUDIT" />
+        <appender-ref ref="ASYNC_TRANSACTION" />
+        <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+            <then>
+                <appender-ref ref="ALL_ROLLING" />
+            </then>
+        </if>
+    </root>
+    <logger level="INFO" name="org.openecomp.sdc" />
+</configuration>
index 0878f5c..3a5553b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 1d0751a..03eb04e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-logging-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/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
index b08c74e..58095e7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018 ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -147,4 +148,4 @@ spec:
       - name:  {{ include "common.fullname" . }}-logs
         emptyDir: {}
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index c2203d5..32a5a37 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018 ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index d59f341..b51b6e7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 113cb10..c1f0d38 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 81d4f2c..d58c2b5 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Cassandra
 name: sdc-cs
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 0878f5c..3a5553b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 0ea03f8..c16fdb7 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index cdccbf4..75e9a11 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..9ceef30 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..2f343c8 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 805eaa3..3f66d34 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 373d6e8..4e8d952 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index c13e3c8..542b339 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
 *.tmproj
\ No newline at end of file
index fa4d341..d1deff3 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
-#
+# Modifications Copyright © 2018 AT&T, ZTE
 # 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
@@ -11,8 +11,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
 description: ONAP Service Design and Creation Elasticsearch
 name: sdc-es
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 0878f5c..3a5553b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index fe08596..fb7c4cf 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018 ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 6fd3bc7..009fe93 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..9ceef30 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..2f343c8 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 805eaa3..3f66d34 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index d90e984..c5bad7c 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 6580e89..c1e05bb 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Front End
 name: sdc-fe
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 6e25354..1000982 100644 (file)
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>\r
+<!--\r
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+-->\r
+\r
 <configuration scan="true" scanPeriod="3 seconds">\r
     <property name="logDir" value="/var/log/onap" />\r
     <property name="componentName" scope="system" value="sdc"></property>\r
         </if>\r
     </root>\r
     <logger level="INFO" name="org.openecomp.sdc" />\r
-</configuration>
\ No newline at end of file
+</configuration>\r
index c4b9989..6319bfb 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 144bdb7..03eb04e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-logging-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/logging/*").AsConfig . | indent 2 }}
index bbc7790..6d94c92 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -144,4 +145,4 @@ spec:
         - name:  {{ include "common.fullname" . }}-logs
           emptyDir: {}
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 32e3122..7e59415 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e57c226..7a6a97e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index b9208e2..ce90c2d 100644 (file)
@@ -1,25 +1,25 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-
-
-#TODO:REMOVE
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
+\r
+\r
+#TODO:REMOVE\r
 sdc-kb.yaml
\ No newline at end of file
index e0f03e9..99e0678 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Kibana
 name: sdc-kb
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 0878f5c..3a5553b 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index f33dbe6..68299da 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -97,4 +98,4 @@ spec:
           name: {{ .Release.Name }}-sdc-environments-configmap
           defaultMode: 0755
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 594950e..de78fd1 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index bc481ac..086651b 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index f0c1319..daebc7d 100644 (file)
@@ -1,21 +1,21 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
+# Patterns to ignore when building packages.\r
+# This supports shell glob matching, relative path matching, and\r
+# negation (prefixed with !). Only one pattern per line.\r
+.DS_Store\r
+# Common VCS dirs\r
+.git/\r
+.gitignore\r
+.bzr/\r
+.bzrignore\r
+.hg/\r
+.hgignore\r
+.svn/\r
+# Common backup files\r
+*.swp\r
+*.bak\r
+*.tmp\r
+*~\r
+# Various IDEs\r
+.project\r
+.idea/\r
+*.tmproj\r
index 66bf889..55477ae 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 apiVersion: v1
 description: ONAP Service Design and Creation Onboarding API
 name: sdc-onboarding-be
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
index 8a89373..515076f 100644 (file)
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>\r
+<!--\r
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+-->\r
 <configuration scan="true" scanPeriod="3 seconds">\r
     <property name="logDir" value="/var/log/onap" />\r
     <property name="componentName" scope="system" value="sdc"></property>\r
         </if>\r
     </root>\r
     <logger level="INFO" name="org.openecomp.sdc" />\r
-</configuration>
\ No newline at end of file
+</configuration>\r
index 0878f5c..edfb086 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, ZTE and 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.
+
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index 1d0751a..03eb04e 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,5 +18,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-logging-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/logging/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
index 328a28d..89ded83 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -141,4 +142,4 @@ spec:
       - name:  {{ include "common.fullname" . }}-logs
         emptyDir: {}
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 35f2ef8..3209185 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 184728f..9ceef30 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index e27c331..2f343c8 100644 (file)
@@ -1,5 +1,6 @@
 {{/*
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index eec7488..a72ce76 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index abee401..fd2e6de 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index a822504..50062a1 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright © 2018 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -82,5 +83,9 @@ spec:
             value: "{{ .Values.config.sdcProtocol }}"
           - name: SDC_ENDPOINT
             value: "{{ .Values.config.sdcEndpoint }}"
+          - name: SDC_USER
+            value: "{{ .Values.config.sdcExternalUser }}"
+          - name: SDC_PASSWORD
+            value: "{{ .Values.config.sdcExternalUserPassword }}"
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index f4a68d7..2b14253 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright © 2018 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018  ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index acabaae..14a937f 100644 (file)
@@ -1,4 +1,6 @@
 # Copyright © 2018 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -36,4 +38,4 @@ spec:
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
\ No newline at end of file
+    release: {{ .Release.Name }}
index 057ebbe..e2e1430 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright © 2018 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -35,13 +36,15 @@ pullPolicy: Always
 debugEnabled: false
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=6000,server=y,suspend=n -Xmx1536m -Xms1536m"
+  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=7001,server=y,suspend=n -Xmx1536m -Xms1536m"
   cassandaAuthenticationEnabled: true
   cassandraHosts: sdc-cs
   cassandraThriftClientPort: 9160
   cassandraClientPort: 9042
   sdcProtocol: HTTP
   sdcEndpoint: sdc-be:8080
+  sdcExternalUser: workflow
+  sdcExternalUserPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
 
 # default number of instances
 replicaCount: 1
index 68e7f32..2990de3 100644 (file)
@@ -1,5 +1,5 @@
-# Copyright © 2018 Amdocs, Bell Canada
-#
+# Copyright © 2018 ZTE
+# Modifications Copyright © 2018 AT&T, 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
index 6eece10..076fc11 100644 (file)
@@ -34,7 +34,7 @@ pullPolicy: Always
 debugEnabled: false
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=6001,server=y,suspend=n -Xmx256m -Xms256m"
+  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=7000,server=y,suspend=n -Xmx256m -Xms256m"
   backendServerURL: "http://sdc-wfd-be:8080"
 
 # default number of instances
index 1e8f788..2a8452d 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,4 +16,4 @@
 dependencies:
   - name: common
     version: ~2.0.0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
index b0d4690..3f75cdf 100644 (file)
@@ -1,3 +1,17 @@
+# Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE
+#
+# 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.
+
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
index 575176d..1e69c97 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018 ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,6 +18,11 @@ kind: ConfigMap
 metadata:
   name: {{ .Release.Name }}-sdc-environments-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/environments/*").AsConfig . | indent 2 }}
 ---
@@ -25,5 +31,10 @@ kind: ConfigMap
 metadata:
   name: {{ .Release.Name }}-sdc-filebeat-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/log/filebeat/*").AsConfig . | indent 2 }}
index 341e55a..b3470e2 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, AT&T, Bell Canada
+# Modifications Copyright © 2018 ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 6882692..9965673 100644 (file)
@@ -1,4 +1,5 @@
 # Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T, ZTE
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -34,4 +35,4 @@ config:
 
 sdc-es:
   service:
-    name: sdc-es
\ No newline at end of file
+    name: sdc-es
index fd8934b..816b1db 100644 (file)
@@ -17,5 +17,10 @@ kind: ConfigMap
 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 }}
 data:
 {{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 1a13cc3..a649a07 100644 (file)
@@ -74,7 +74,7 @@ spec:
           name: properties
           subPath: lcm.properties
         resources:
-{{ toYaml .Values.resources | indent 12 }}
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
         {{- if .Values.nodeSelector }}
         nodeSelector:
 {{ toYaml .Values.nodeSelector | indent 10 }}
index 9ddf590..e735090 100644 (file)
@@ -72,12 +72,23 @@ mysql:
   service:
     name: sdnc-dbhost
     internalPort: 3306
+#Resource limit flavor -By default using small
+flavor: small
+#Segregation for different environment (small and large)
+
+resources:
+ small:
+  limits:
+    cpu: 2
+    memory: 4Gi
+  requests:
+    cpu: 2
+    memory: 4Gi
+ large:
+  limits:
+    cpu: 4
+    memory: 8Gi
+  requests:
+    cpu: 4
+    memory: 8Gi
 
-resources: {}
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
index f57dc78..816b1db 100644 (file)
@@ -17,5 +17,10 @@ kind: ConfigMap
 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 }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index a19c33a..fe9d302 100644 (file)
@@ -75,7 +75,7 @@ spec:
             name: config
             subPath: RestServer_config
           resources:
-{{ toYaml .Values.resources | indent 12 }}
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
         {{- if .Values.nodeSelector }}
         nodeSelector:
 {{ toYaml .Values.nodeSelector | indent 10 }}
@@ -93,4 +93,4 @@ spec:
             name: {{ include "common.fullname" . }}
             defaultMode: 0644
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 895fa6e..6cd46b6 100644 (file)
@@ -69,11 +69,23 @@ service:
 ingress:
   enabled: false
 
-resources: {}
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+#Resource Limit flavor -By default using small
+flavor: small
+
+#Segregation for Different environment (Small and Large)
+
+resources:
+ small:
+  limits:
+    cpu: 1
+    memory: 1Gi
+  requests:
+    cpu: 1
+    memory: 1Gi
+ large:
+  limits:
+    cpu: 2
+    memory: 2Gi
+  requests:
+    cpu: 2
+    memory: 2Gi
index f57dc78..816b1db 100644 (file)
@@ -17,5 +17,10 @@ kind: ConfigMap
 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 }}
 data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 87ed6aa..aba6870 100644 (file)
@@ -97,7 +97,7 @@ spec:
             name: properties
             subPath: svclogic.properties.sdnctldb02
           resources:
-{{ toYaml .Values.resources | indent 12 }}
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
         {{- if .Values.nodeSelector }}
         nodeSelector:
 {{ toYaml .Values.nodeSelector | indent 10 }}
index 1938503..400d749 100644 (file)
@@ -77,11 +77,22 @@ mysql:
     name: sdnc-dbhost
     internalPort: 3306
 
-resources: {}
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+#Resource limit flavor -By default using small
+flavor: small
+#segregation for different environment (small and large)
+
+resources:
+ small:
+  limits:
+    cpu: 1
+    memory: 1Gi
+  requests:
+    cpu: 1
+    memory: 1Gi
+ large:
+  limits:
+    cpu: 2
+    memory: 2Gi
+  requests:
+    cpu: 2
+    memory: 2Gi
index fd8934b..816b1db 100644 (file)
@@ -17,5 +17,10 @@ kind: ConfigMap
 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 }}
 data:
 {{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
index 5aa1a31..2258d4a 100644 (file)
@@ -73,7 +73,7 @@ spec:
           name: properties
           subPath: ueb-listener.properties
         resources:
-{{ toYaml .Values.resources | indent 12 }}
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
         {{- if .Values.nodeSelector }}
         nodeSelector:
 {{ toYaml .Values.nodeSelector | indent 10 }}
index de9bd27..c6bbeca 100644 (file)
@@ -74,11 +74,21 @@ mysql:
 ingress:
   enabled: false
 
-resources: {}
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+#Resource limit flavor -By default using small
+flavor: small
+#Segregation for different environment (small and large)
+resources:
+ small:
+  limits:
+    cpu: 2
+    memory: 4Gi
+  requests:
+    cpu: 2
+    memory: 4Gi
+ large:
+  limits:
+    cpu: 4
+    memory: 8Gi
+  requests:
+    cpu: 4
+    memory: 8Gi
index 9a39d0f..5d51118 100644 (file)
@@ -1,3 +1,4 @@
+#ANSIBLE
 ansible.agenturl=http://{{.Values.config.ansibleServiceName}}:{{.Values.config.ansiblePort}}/Dispatch
 ansible.user=sdnc
 ansible.password=sdnc
@@ -8,11 +9,29 @@ ansible.version=0.00
 lcm.upgrade-pre-check.playbookname=ansible_precheck
 lcm.upgrade-post-check.playbookname=ansible_postcheck
 lcm.upgrade-software.playbookname=ansible_upgradesw
+lcm.pnf.upgrade-pre-check.playbookname=ansible_precheck_pnf
+lcm.pnf.upgrade-post-check.playbookname=ansible_postcheck_pnf
+lcm.pnf.upgrade-software.playbookname=ansible_upgradesw_pnf
+lcm.quiesce-traffic.playbookname=ansible_quiescetraffic
+lcm.resume-traffic.playbookname=ansible_resumetraffic
+lcm.distribute-traffic.playbookname=ansible_distributetraffic
+
+#RESTAPI INTERFACEs
 restapi.templateDir=/opt/onap/sdnc/restapi/templates
+
+#RESTCONF
+lcm.restconf.configscaleout.templatefile=lcm-restconf-configscaleout.json
+lcm.restconf.configscaleout.urlpath=/restconf/config/vlb-business-vnf-onap-plugin:vlb-business-vnf-onap-plugin/vdns-instances/vdns-instance/
+lcm.restconf.configscaleout.geturlpath=/restconf/config/vlb-business-vnf-onap-plugin:vlb-business-vnf-onap-plugin
+lcm.restconf.configscaleout.user=
+lcm.restconf.configscaleout.password=
+lcm.restconf.port=8183
+
+#DMAAP
 restapi.lcm.dmaap.publish.templatefile=lcm-dmaap-publish-template.json
 lcm.dmaap.url=http://message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}/events/SDNC-LCM-WRITE
 lcm.dmaap.user=
 lcm.dmaap.password=
 lcm.dmaap.version=1.0
 lcm.dmaap.partition=MSO
-lcm.dmaap.type=response
\ No newline at end of file
+lcm.dmaap.type=response
diff --git a/kubernetes/sdnc/resources/config/conf/netbox.properties b/kubernetes/sdnc/resources/config/conf/netbox.properties
new file mode 100755 (executable)
index 0000000..9cd3880
--- /dev/null
@@ -0,0 +1,19 @@
+#
+# Copyright (C) 2018 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.
+#
+
+# Configuration file for Netbox client
+org.onap.ccsdk.sli.adaptors.netbox.url=http://netbox-app.{{.Release.Namespace}}:8001
+org.onap.ccsdk.sli.adaptors.netbox.apikey=onceuponatimeiplayedwithnetbox20180814
\ No newline at end of file
index cf43323..3e88512 100644 (file)
@@ -17,6 +17,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
 {{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
 ---
@@ -25,5 +30,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-scripts
   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/bin/*").AsConfig . | indent 2 }}
index 6f4ee22..4adf816 100644 (file)
@@ -17,6 +17,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-filebeat-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/log/filebeat/log4j/*").AsConfig . | indent 2 }}
 ---
@@ -25,6 +30,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log-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/log/*").AsConfig . | indent 2 }}
 ---
@@ -33,6 +43,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-bin
   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/bin/*").AsConfig . | indent 2 }}
 ---
@@ -41,6 +56,11 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-properties
   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/conf/*").AsConfig . | indent 2 }}
 ---
@@ -49,5 +69,10 @@ kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-env
   namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
 data:
 {{ tpl (.Files.Get "resources/env.yaml") . | indent 2 }}
index 63a85a3..e74202c 100644 (file)
@@ -98,11 +98,11 @@ spec:
   - name: {{ .Values.service.portName }}-0-port-{{ .Values.service.internalPort4 }}
     port: {{ .Values.service.clusterPort2 }}
     targetPort: {{ .Values.service.internalPort4 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort4 }}
+    nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.geoNodePort4 }}
   - name: {{ .Values.service.portName }}-0-port-{{ .Values.service.internalPort }}
     port: {{ .Values.service.clusterPort3 }}
     targetPort: {{ .Values.service.internalPort }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort1 }}
+    nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.geoNodePort1 }}
   type: NodePort
   selector:
     statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
@@ -121,11 +121,11 @@ spec:
   - name: {{ .Values.service.portName }}-1-port-{{ .Values.service.internalPort4 }}
     port: {{ .Values.service.clusterPort2 }}
     targetPort: {{ .Values.service.internalPort4 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort5 }}
+    nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.geoNodePort5 }}
   - name: {{ .Values.service.portName }}-1-port-{{ .Values.service.internalPort }}
     port: {{ .Values.service.clusterPort3 }}
     targetPort: {{ .Values.service.internalPort }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort2 }}
+    nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.geoNodePort2 }}
   type: NodePort
   selector:
     statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
@@ -144,11 +144,11 @@ spec:
   - name: {{ .Values.service.portName }}-2-port-{{ .Values.service.internalPort4 }}
     port: {{ .Values.service.clusterPort2 }}
     targetPort: {{ .Values.service.internalPort4 }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort6 }}
+    nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.geoNodePort6 }}
   - name: {{ .Values.service.portName }}-2-port-{{ .Values.service.internalPort }}
     port: {{ .Values.service.clusterPort3 }}
     targetPort: {{ .Values.service.internalPort }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.geoNodePort3 }}
+    nodePort: {{ .Values.global.nodePortPrefixExt | default .Values.nodePortPrefixExt }}{{ .Values.service.geoNodePort3 }}
   type: NodePort
   selector:
     statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
index 03ae880..8c52e5c 100644 (file)
@@ -128,7 +128,7 @@ spec:
           - mountPath: /var/log/onap
             name: logs
           resources:
-{{ toYaml .Values.resources | indent 12 }}
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
         {{- if .Values.nodeSelector }}
         nodeSelector:
 {{ toYaml .Values.nodeSelector | indent 10 }}
index 607fd05..1fd2fa5 100644 (file)
@@ -17,6 +17,7 @@
 #################################################################
 global:
   nodePortPrefix: 302
+  nodePortPrefixExt: 304
   repository: nexus3.onap.org:10001
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
@@ -196,11 +197,23 @@ persistence:
 ingress:
   enabled: false
 
-resources: {}
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
+#Resource Limit flavor -By Default using small
+flavor: small
+#segregation for different envionment (Small and Large)
+
+resources:
+ small:
+  limits:
+    cpu: 2
+    memory: 4Gi
+  requests:
+    cpu: 2
+    memory: 4Gi
+
+ large:
+  limits:
+    cpu: 4
+    memory: 8Gi
+  requests:
+    cpu: 4
+    memory: 8Gi
old mode 100644 (file)
new mode 100755 (executable)
old mode 100644 (file)
new mode 100755 (executable)
index 27e9161..dcd4eb5
@@ -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: v1
 description: ONAP Service Orchestrator
 name: so
diff --git a/kubernetes/so/charts/so-bpmn-infra/Chart.yaml b/kubernetes/so/charts/so-bpmn-infra/Chart.yaml
new file mode 100755 (executable)
index 0000000..6feed26
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+appVersion: "1.0"
+description: A Helm chart for Kubernetes
+name: so-bpmn-infra
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..9021ef5
--- /dev/null
@@ -0,0 +1,265 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+aai:
+  auth: 2630606608347B7124C244AB0FE34F6F
+  dme2:
+    timeout: '30000'
+  endpoint: https://aai.{{ include "common.namespace" . }}:8443
+camunda:
+  bpm:
+    admin-user:
+      id: admin
+      password: admin
+    history-level: full
+    job-execution:
+      max-pool-size: 30
+      core-pool-size: 3
+entitymanager:
+  packagesToScan: com
+mso:
+  msoKey: 07a7159d3bf51a0e53be7a8f89699be7
+  correlation:
+    timeout: 60
+  logPath: logs
+  async:
+    core-pool-size: 50
+    max-pool-size: 50
+    queue-capacity: 500
+  adapters:
+    requestDb:
+      auth: Basic YnBlbDptc28tZGItMTUwNyE=
+      endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
+    completemsoprocess:
+      endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/CompleteMsoProcess
+    db:
+      auth: 26AFB797A6A57960D5D718491925C50F77CDC22AC394B3DBA09950D8FD1C0764
+      password: wLg4sjrAFUS8rfVfdvTXeQ==
+      endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083/services/RequestsDbAdapter
+      spring:
+        endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
+    network:
+      endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/NetworkAdapter
+      rest:
+        endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/rest/v1/networks
+    openecomp:
+      db:
+        endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083/services/RequestsDbAdapter
+    po:
+      auth: 757A94191D685FD2092AC1490730A4FC
+      password: 3141634BF7E070AA289CF2892C986C0B
+    sdnc:
+      endpoint: http://mso-sdnc-adapter.{{ include "common.namespace" . }}:8086/adapters/SDNCAdapter
+      rest:
+        endpoint: http://mso-sdnc-adapter.{{ include "common.namespace" . }}:8086/adapters/rest/v1/sdnc
+      timeout: PT60S
+    tenant:
+      endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/TenantAdapter
+    vnf:
+      endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/VnfAdapter
+      rest:
+        endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/rest/vnfs/v1/vnfs
+    volume-groups:
+      rest:
+        endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}g:8087/services/rest/v1/volume-groups
+    vnf-async:
+      endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/VnfAsyncAdapter
+  bpmn:
+    process:
+      historyTimeToLive: '30'
+  callbackRetryAttempts: '5'
+  catalog:
+    db:
+      endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8083/ecomp/mso/catalog
+      spring:
+        endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8083
+  db:
+    auth: Basic YnBlbDptc28tZGItMTUwNyE=
+  default:
+    adapter:
+      namespace: http://org.onap.mso
+  healthcheck:
+    log:
+      debug: 'false'
+  infra:
+    customer:
+      id: testCustIdInfra
+  po:
+    timeout: PT60S
+  request:
+    db:
+      endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083/
+  rollback: 'true'
+  sdnc:
+    password: 3141634BF7E070AA289CF2892C986C0B
+  service:
+    agnostic:
+      sniro:
+        endpoint: /sniro/api/v2/placement
+        host: http://c1.vm1.mso.simpledemo.onap.org:30253
+  site-name: CamundaEngine
+  sniro:
+    auth: test:testpwd
+    callback: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/adapters/rest/SDNCNotify
+    endpoint: http://replaceme:28090/optimizationInstance/V1/create
+    timeout: PT30M
+  workflow:
+    CreateGenericVNFV1:
+      aai:
+        volume-group:
+          uri: /aai/v6/cloud-infrastructure/volume-groups/volume-group
+    default:
+      aai:
+        version: '8'
+        cloud-region:
+          version: '9'
+        generic-vnf:
+          version: '9'
+        v11:
+          customer:
+            uri: /aai/v11/business/customers/customer
+          generic-query:
+            uri: /aai/v11/search/generic-query
+          generic-vnf:
+            uri: /aai/v11/network/generic-vnfs/generic-vnf
+          l3-network:
+            uri: /aai/v11/network/l3-networks/l3-network
+          network-policy:
+            uri: /aai/v11/network/network-policies/network-policy
+          nodes-query:
+            uri: /aai/v11/search/nodes-query
+          route-table-reference:
+            uri: /aai/v11/network/route-table-references/route-table-reference
+          tenant:
+            uri: /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant
+          vce:
+            uri: /aai/v11/network/vces/vce
+          vpn-binding:
+            uri: /aai/v11/network/vpn-bindings/vpn-binding
+        v8:
+          configuration:
+            uri: /aai/v11/network/configurations/configuration
+          customer:
+            uri: /aai/v8/business/customers/customer
+          generic-query:
+            uri: /aai/v8/search/generic-query
+          l3-network:
+            uri: /aai/v8/network/l3-networks/l3-network
+          network-policy:
+            uri: /aai/v8/network/network-policies/network-policy
+          nodes-query:
+            uri: /aai/v8/search/nodes-query
+          route-table-reference:
+            uri: /aai/v8/network/route-table-references/route-table-reference
+          tenant:
+            uri: /aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant
+          vce:
+            uri: /aai/v8/network/vces/vce
+          vpn-binding:
+            uri: /aai/v8/network/vpn-bindings/vpn-binding
+        v9:
+          cloud-region:
+            uri: /aai/v9/cloud-infrastructure/cloud-regions/cloud-region/att-aic
+          generic-vnf:
+            uri: /aai/v9/network/generic-vnfs/generic-vnf
+      retry:
+        attempts: '1'
+    deleteCinderVolumeV1:
+      aai:
+        volume-group:
+          uri: /aai/v6/cloud-infrastructure/volume-groups/volume-group
+    global:
+      default:
+        aai:
+          namespace: http://org.onap.aai.inventory/
+    message:
+      endpoint: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/WorkflowMessage
+    notification:
+      name: GenericNotificationServiceATT
+    sdncadapter:
+      callback: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/SDNCAdapterCallbackService
+    vnfadapter:
+      create:
+        callback: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/VNFAdaptercallback
+      delete:
+        callback: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/VNFAdaptercallback
+      query:
+        callback: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/VNFAdaptercallback
+      rollback:
+        callback: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/VNFAdaptercallback
+  global:
+    dmaap:
+      username: testuser
+      password: alRyMzJ3NUNeakxl
+      host: http://10.42.111.36:904
+      publisher:
+        topic: replaceme
+policy:
+  auth: Basic dGVzdHBkcDphbHBoYTEyMw==
+  client:
+    auth: Basic bTAzNzQzOnBvbGljeVIwY2sk
+  endpoint: http://pdp.{{ include "common.namespace" . }}:8081/pdp/api/
+  environment: TEST
+sdnc:
+  auth: Basic YWRtaW46YWRtaW4=
+  host: https://sdc-be.{{ include "common.namespace" . }}:8443
+  path: /restconf/operations/GENERIC-RESOURCE-API
+appc:
+  client:
+    topic:
+      read:
+        name: APPC-LCM-WRITE
+        timeout: 360000
+      write: APPC-LCM-READ
+      sdnc:
+        read:
+          name: SDNC-LCM-WRITE
+        write: SDNC-LCM-READ
+    response:
+      timeout: 360000
+    key: VIlbtVl6YLhNUrtU
+    secret: 64AG2hF4pYeG2pq7CT6XwUOT
+    service: ueb
+    poolMembers: message-router.{{ include "common.namespace" . }}:3904,message-router.{{ include "common.namespace" . }}:3904
+server:
+  port: 8081
+  tomcat:
+    max-threads: 50
+spring:
+  security:
+    usercredentials:
+    -
+      username: apihBpmn
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPMN-Client
+    -
+      username: sdncaBpmn
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPMN-Client
+    -
+      username: poBpmn
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPMN-Client
+    -
+      username: wmaBpmn
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPMN-Client
+    -
+      username: sniro
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SNIRO-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
+
old mode 100644 (file)
new mode 100755 (executable)
similarity index 72%
rename from kubernetes/so/templates/log-configmap.yaml
rename to kubernetes/so/charts/so-bpmn-infra/templates/configmap.yaml
index ed55ec0..a03dbd8
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 AT&T USA
 #
 # 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
 kind: ConfigMap
 metadata:
-  name: so-log-configmap
+  name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
 ---
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: so-filebeat-configmap
+  name: {{ include "common.fullname" . }}-app-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-bpmn-infra/templates/deployment.yaml b/kubernetes/so/charts/so-bpmn-infra/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-bpmn-infra/templates/service.yaml b/kubernetes/so/charts/so-bpmn-infra/templates/service.yaml
new file mode 100755 (executable)
index 0000000..1ad4786
--- /dev/null
@@ -0,0 +1,59 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    msb.onap.org/service-info: '[
+         {
+        "serviceName": "so/bpmn",
+        "version": "v1",
+        "url": "/VNFAdaptercallback/",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1" ,
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/bpmn",
+        "version": "v1",
+        "url": "/SDNCAdapterCallbackService",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         }
+         ]'
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-bpmn-infra/values.yaml b/kubernetes/so/charts/so-bpmn-infra/values.yaml
new file mode 100755 (executable)
index 0000000..e513e6a
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+repository: nexus3.onap.org:10001
+image: onap/so/bpmn-infra:latest
+pullPolicy: IfNotPresent
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 8081
+logPath: ./logs/bpmn/
+app: so-bpmn-infra
+service:
+    type: ClusterIP
+    internalPort: 8081
+    externalPort: 8081
+    portName: so-bpmn-port
+updateStrategy:
+    type: RollingUpdate
+    maxUnavailable: 1
+    maxSurge: 1
+# Resource Limit flavor -By Default using small
+flavor: large
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      memory: 4Gi
+      cpu: 2000m
+    requests:
+      memory: 1Gi
+      cpu: 500m
+  large:
+    limits:
+      memory: 8Gi
+      cpu: 4000m
+    requests:
+      memory: 2Gi
+      cpu: 1000m
+livenessProbe:
+    path: /manage/health
+    scheme: HTTP
+    initialDelaySeconds: 600
+    periodSeconds: 60
+    timeoutSeconds: 10
+    successThreshold: 1
+    failureThreshold: 3
+ingress:
+  enabled: false
+nodeSelector: {}
+tolerations: []
+affinity: {}
diff --git a/kubernetes/so/charts/so-catalog-db-adapter/Chart.yaml b/kubernetes/so/charts/so-catalog-db-adapter/Chart.yaml
new file mode 100755 (executable)
index 0000000..75a6126
--- /dev/null
@@ -0,0 +1,17 @@
+# Copyright © 2018 AT&T USA
+#
+# 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: A Helm chart for so-catalog-db-adapter
+name: so-catalog-db-adapter
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-catalog-db-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-catalog-db-adapter/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..bdf82b6
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+server:
+    port: 8082
+    tomcat:
+        max-threads: 50
+ssl-enable: false
+mso:
+  logPath: logs
+  site-name: onapheat
+  catalog:
+    db:
+      spring:
+        endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8082
+  db:
+    auth: Basic YnBlbDpwYXNzd29yZDEk
+spring:
+  security:
+    usercredentials:
+    -
+      username: bpel
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPEL-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
+#Actuator
+management:
+  context-path: /manage
diff --git a/kubernetes/so/charts/so-catalog-db-adapter/templates/configmap.yaml b/kubernetes/so/charts/so-catalog-db-adapter/templates/configmap.yaml
new file mode 100755 (executable)
index 0000000..a03dbd8
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-catalog-db-adapter/templates/deployment.yaml b/kubernetes/so/charts/so-catalog-db-adapter/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-catalog-db-adapter/templates/service.yaml b/kubernetes/so/charts/so-catalog-db-adapter/templates/service.yaml
new file mode 100755 (executable)
index 0000000..db3bb78
--- /dev/null
@@ -0,0 +1,140 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    msb.onap.org/service-info: '[
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/services",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1" ,
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/vnfResources/{vnfModelCustomizationUuid}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/serviceVnfs",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/networkResources/{networkModelCustomizationUuid}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/serviceNetworks",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/serviceResources",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/allottedResources/{arModelCustomizationUuid}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/serviceAllottedResources",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/vfModules",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/serviceToscaCsar",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/catdb",
+        "version": "v1",
+        "url": "/{version: v[0-9]+}/resourceRecipe",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         }
+         ]'
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-catalog-db-adapter/values.yaml b/kubernetes/so/charts/so-catalog-db-adapter/values.yaml
new file mode 100755 (executable)
index 0000000..1b2441f
--- /dev/null
@@ -0,0 +1,62 @@
+# Copyright © 2018 AT&T USA\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+repository: nexus3.onap.org:10001\r
+image: onap/so/catalog-db-adapter:latest\r
+pullPolicy: IfNotPresent\r
+replicaCount: 1\r
+minReadySeconds: 10\r
+containerPort: 8082\r
+logPath: ./logs/catdb/\r
+app: catalog-db-adapter\r
+service:\r
+    type: ClusterIP\r
+    internalPort: 8082\r
+    externalPort: 8082\r
+    portName: so-catdb-port\r
+updateStrategy:\r
+    type: RollingUpdate\r
+    maxUnavailable: 1\r
+    maxSurge: 1\r
+# Resource Limit flavor -By Default using small\r
+flavor: small\r
+# Segregation for Different environment (Small and Large)\r
+resources:\r
+  small:\r
+    limits:\r
+      memory: 4Gi\r
+      cpu: 2000m\r
+    requests:\r
+      memory: 1Gi\r
+      cpu: 500m\r
+  large:\r
+    limits:\r
+      memory: 8Gi\r
+      cpu: 4000m\r
+    requests:\r
+      memory: 2Gi\r
+      cpu: 1000m\r
+livenessProbe:\r
+    path: /manage/health\r
+    port: 8082\r
+    scheme: HTTP\r
+    initialDelaySeconds: 600\r
+    periodSeconds: 60\r
+    timeoutSeconds: 10\r
+    successThreshold: 1\r
+    failureThreshold: 3\r
+ingress:\r
+  enabled: false\r
+nodeSelector: {}\r
+tolerations: []\r
+affinity: {}\r
diff --git a/kubernetes/so/charts/so-db-secrets/Chart.yaml b/kubernetes/so/charts/so-db-secrets/Chart.yaml
new file mode 100755 (executable)
index 0000000..f9470e2
--- /dev/null
@@ -0,0 +1,17 @@
+# Copyright © 2018 AT&T USA
+#
+# 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: A Helm chart for DB secrets
+name: so-db-secrets
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-db-secrets/templates/secrets.yaml b/kubernetes/so/charts/so-db-secrets/templates/secrets.yaml
new file mode 100755 (executable)
index 0000000..f1910d2
--- /dev/null
@@ -0,0 +1,31 @@
+# Copyright © 2018 AT&T USA
+#
+# 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: Secret
+metadata:
+  name: {{ .Release.Name }}-so-db-secrets
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+data:
+  mariadb.readwrite.host : {{"so-mariadb"| b64enc | quote}}
+  mariadb.readwrite.port : {{"3306"| b64enc }}
+  mariadb.readwrite.rolename: {{"root"| b64enc | quote}}
+  mariadb.readwrite.password: {{"password"| b64enc | quote}}
+  mariadb.admin.rolename: {{"root"| b64enc | quote}}
+  mariadb.admin.password:  {{"password"| b64enc | quote}}
+type: Opaque
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
similarity index 95%
rename from kubernetes/so/charts/mariadb/Chart.yaml
rename to kubernetes/so/charts/so-mariadb/Chart.yaml
index 6b4471a..789280a
@@ -11,8 +11,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
 description: MariaDB Service
-name: mariadb
-version: 2.0.0
+name: so-mariadb
+version: 2.0.0
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
similarity index 97%
rename from kubernetes/so/charts/mariadb/templates/configmap.yaml
rename to kubernetes/so/charts/so-mariadb/templates/configmap.yaml
index 3c71619..1ea1987
@@ -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: v1
 kind: ConfigMap
 metadata:
old mode 100644 (file)
new mode 100755 (executable)
similarity index 97%
rename from kubernetes/so/charts/mariadb/templates/deployment.yaml
rename to kubernetes/so/charts/so-mariadb/templates/deployment.yaml
index c85fe79..07feb4a
@@ -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:
@@ -40,6 +39,7 @@ spec:
           git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
           echo "Clone complete. Copying from /tmp/gerrit/volumes/mariadb/docker-entrypoint-initdb.d to /docker-entrypoint-initdb.d";
           cp -rf /tmp/gerrit/volumes/mariadb/docker-entrypoint-initdb.d/* /docker-entrypoint-initdb.d;
+          chmod -R 755 /docker-entrypoint-initdb.d;
           echo "Done.";
         image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
@@ -81,7 +81,7 @@ spec:
         - name: docker-entrypoint-initdb-d
           mountPath: "/docker-entrypoint-initdb.d"
         resources:
-{{ toYaml .Values.resources | indent 12 }}
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
       {{- if .Values.nodeSelector }}
       nodeSelector:
 {{ toYaml .Values.nodeSelector | indent 10 }}
diff --git a/kubernetes/so/charts/so-mariadb/templates/pv.yaml b/kubernetes/so/charts/so-mariadb/templates/pv.yaml
new file mode 100755 (executable)
index 0000000..d1e1b04
--- /dev/null
@@ -0,0 +1,36 @@
+{{/*
+# 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.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+    name: {{ include "common.fullname" . }}
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size}}
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+  hostPath:
+    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-mariadb/templates/pvc.yaml b/kubernetes/so/charts/so-mariadb/templates/pvc.yaml
new file mode 100755 (executable)
index 0000000..74ba690
--- /dev/null
@@ -0,0 +1,47 @@
+{{/*
+# 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.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      name: {{ include "common.fullname" . }}
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
similarity index 98%
rename from kubernetes/so/charts/mariadb/templates/secrets.yaml
rename to kubernetes/so/charts/so-mariadb/templates/secrets.yaml
index 4d65c07..24f7139
@@ -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: v1
 kind: Secret
 metadata:
@@ -24,4 +23,4 @@ metadata:
     heritage: {{ .Release.Service }}
 type: Opaque
 data:
-  db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
+  db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
similarity index 83%
rename from kubernetes/vnfsdk/charts/vnfsdk-postgres/templates/service.yaml
rename to kubernetes/so/charts/so-mariadb/templates/service.yaml
index f6208cf..c9a3f56
@@ -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: v1
 kind: Service
 metadata:
@@ -25,14 +24,14 @@ metadata:
 spec:
   type: {{ .Values.service.type }}
   ports:
-    {{if eq .Values.service.type "NodePort" -}}
-    - port: {{ .Values.service.internalPort }}
+    - name: {{ .Values.service.portName }}
+    {{- if eq .Values.service.type "NodePort" }}
+      port: {{ .Values.service.internalPort }}
       nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
     {{- else -}}
-    - port: {{ .Values.service.externalPort }}
+      port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
     {{- end}}
-      name: {{ .Values.service.portName | default "http" }}
   selector:
     app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-mariadb/values.yaml b/kubernetes/so/charts/so-mariadb/values.yaml
new file mode 100755 (executable)
index 0000000..8ea7e13
--- /dev/null
@@ -0,0 +1,91 @@
+# 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.
+# Default values for mariadb.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+  nodePortPrefix: 302
+  persistence: {}
+  readinessRepository: oomk8s
+  ubuntuInitRepository: registry.hub.docker.com
+# application image
+repository: nexus3.onap.org:10001
+image: mariadb:10.1.11
+pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+# application configuration
+config:
+  mariadbRootPassword: password
+  # gerrit branch where the latest heat code is checked in
+  gerritBranch: master
+  # gerrit project where the latest heat code is checked in
+  gerritProject: http://gerrit.onap.org/r/so/docker-config.git
+# default number of instances
+replicaCount: 1
+nodeSelector: {}
+affinity: {}
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 450
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+readiness:
+  initialDelaySeconds: 450
+  periodSeconds: 10
+## 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: mso/mariadb/data
+service:
+  type: NodePort
+  portName: mariadb
+  internalPort: 3306
+  nodePort: 52
+ingress:
+  enabled: false
+# Resource Limit flavor
+flavor: small
+resources:
+  small:
+    limits:
+      cpu: 2
+      memory: 4Gi
+    requests:
+      cpu: 2
+      memory: 4Gi
+  large:
+    limits:
+      cpu: 4
+      memory: 8Gi
+    requests:
+      cpu: 4
+      memory: 8Gi
diff --git a/kubernetes/so/charts/so-openstack-adapter/Chart.yaml b/kubernetes/so/charts/so-openstack-adapter/Chart.yaml
new file mode 100755 (executable)
index 0000000..5ebc0f7
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+appVersion: "1.0"
+description: A Helm chart for Kubernetes
+name: so-openstack-adapter
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..331ee65
--- /dev/null
@@ -0,0 +1,130 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+server:
+  port: 8087
+spring:
+  security:
+    usercredentials:
+    -
+      username: sdnc
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SDNC-Client
+    -
+      username: sitecontrol
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SiteControl-Client
+    -
+      username: bpel
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPEL-Client
+    -
+      username: sniro
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SNIRO-Client
+    -
+      username: apih
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: MSO-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
+org:
+  onap:
+    so:
+      adapters:
+        default_keystone_url_version: /v2.0
+        default_keystone_reg_ex: "/[vV][0-9]"
+        vnf:
+          bpelauth: 5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1
+          checkRequiredParameters: true
+          addGetFilesOnVolumeReq: false
+          sockettimeout: 30
+          connecttimeout: 30
+          retrycount: 5
+          retryinterval: -15
+          retrylist: 408,429,500,502,503,504,900
+          valet_enabled: false
+          fail_requests_on_valet_failure: false
+        network:
+          bpelauth: 5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1
+          sockettimeout: 5
+          connecttimeout: 5
+          retrycount: 5
+          retryinterval: -15
+          retrylist: 408,429,500,502,503,504,900
+        tenant:
+          default_keystone_url_version: /v2.0
+          default_keystone_reg_ex: "/[vV][0-9]"
+          default_tenant_description: Tenant
+          default_region_type: single
+          default_user_role: admin
+          default_success_status_string: Success
+          default_no_regions_status_string: no regions
+          default_quota_value: 10
+          set_default_quota: false
+ecomp:
+  mso:
+    adapters:
+      po:
+        retryCodes: 504
+        retryDelay: 5
+        retryCount: 3
+        pollTimeout: 7500
+        pollInterval: 15
+mso:
+  logPath: ./logs/openstack
+  catalog:
+    db:
+      spring:
+        endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8082
+  db:
+    auth: Basic YnBlbDptc28tZGItMTUwNyE=
+  site-name: localDevEnv
+  async:
+    core-pool-size: 50
+    max-pool-size: 50
+    queue-capacity: 500
+cloud_config:
+  identity_services:
+    RAX_KEYSTONE:
+      identity_url: "https://identity.api.rackspacecloud.com/v2.0"
+      mso_id: "RACKSPACE_ACCOUNT_ID"
+      mso_pass: "RACKSPACE_ACCOUNT_APIKEY"
+      admin_tenant: "service"
+      member_role: "admin"
+      tenant_metadata: true
+      identity_server_type: "KEYSTONE"
+      identity_authentication_type: "RACKSPACE_APIKEY"
+  cloud_sites:
+    Dallas:
+      region_id: "DFW"
+      clli: "DFW"
+      aic_version: "2.5"
+      identity_service_id: "RAX_KEYSTONE"
+    Northern Virginia:
+      region_id: "IAD"
+      clli: "IAD"
+      aic_version: "2.5"
+      identity_service_id: "RAX_KEYSTONE"
+    Chicago:
+      region_id: "ORD"
+      clli: "ORD"
+      aic_version: "2.5"
+      identity_service_id: "RAX_KEYSTONE"
+    DEFAULT:
+      region_id: "DFW"
+      clli: "DFW"
+      aic_version: "2.5"
+      identity_service_id: "RAX_KEYSTONE"
diff --git a/kubernetes/so/charts/so-openstack-adapter/templates/configmap.yaml b/kubernetes/so/charts/so-openstack-adapter/templates/configmap.yaml
new file mode 100755 (executable)
index 0000000..a03dbd8
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-openstack-adapter/templates/deployment.yaml b/kubernetes/so/charts/so-openstack-adapter/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-openstack-adapter/templates/service.yaml b/kubernetes/so/charts/so-openstack-adapter/templates/service.yaml
new file mode 100755 (executable)
index 0000000..031616a
--- /dev/null
@@ -0,0 +1,86 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    msb.onap.org/service-info: '[
+         {
+        "serviceName": "so/openstack",
+        "version": "v1",
+        "url": "/NetworkAdapter",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/openstack",
+        "version": "v1",
+        "url": "/NetworkAdapterAsync",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/openstack",
+        "version": "v1",
+        "url": "/TenantAdapter",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/openstack",
+        "version": "v1",
+        "url": "/VnfAdapter",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/openstack",
+        "version": "v1",
+        "url": "/VnfCloudifyAdapterImpl",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         }
+         ]'
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-openstack-adapter/values.yaml b/kubernetes/so/charts/so-openstack-adapter/values.yaml
new file mode 100755 (executable)
index 0000000..f5b9931
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+image: onap/so/openstack-adapter:latest
+pullPolicy: IfNotPresent
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 8087
+logPath: ./logs/openstack/
+app: openstack-adapter
+service:
+    type: ClusterIP
+    internalPort: 8087
+    externalPort: 8087
+    portName: so-optack-port
+updateStrategy:
+    type: RollingUpdate
+    maxUnavailable: 1
+    maxSurge: 1
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      memory: 4Gi
+      cpu: 2000m
+    requests:
+      memory: 1Gi
+      cpu: 500m
+  large:
+    limits:
+      memory: 8Gi
+      cpu: 4000m
+    requests:
+      memory: 2Gi
+      cpu: 1000m
+livenessProbe:
+    path: /manage/health
+    port: 8087
+    scheme: HTTP
+    initialDelaySeconds: 600
+    periodSeconds: 60
+    timeoutSeconds: 10
+    successThreshold: 1
+    failureThreshold: 3
+ingress:
+  enabled: false
+nodeSelector: {}
+tolerations: []
+affinity: {}
diff --git a/kubernetes/so/charts/so-request-db-adapter/Chart.yaml b/kubernetes/so/charts/so-request-db-adapter/Chart.yaml
new file mode 100755 (executable)
index 0000000..9e7dd05
--- /dev/null
@@ -0,0 +1,17 @@
+# Copyright © 2018 AT&T USA
+#
+# 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: A Helm chart for request-db-adapter
+name: so-request-db-adapter
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-request-db-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-request-db-adapter/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..f995d94
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+# will be used as entry in DB to say SITE OFF/ON for healthcheck
+server:
+    port: 8083
+    tomcat:
+        max-threads: 50
+ssl-enable: false
+mso:
+  logPath: logs
+  site-name: localSite
+  adapters:
+    requestDb:
+      auth: Basic YnBlbDptc28tZGItMTUwNyE=
+      endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
+spring:
+  security:
+    usercredentials:
+    -
+      username: bpel
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPEL-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
+#Actuator
+management:
+  context-path: /manage
diff --git a/kubernetes/so/charts/so-request-db-adapter/templates/configmap.yaml b/kubernetes/so/charts/so-request-db-adapter/templates/configmap.yaml
new file mode 100755 (executable)
index 0000000..a03dbd8
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-request-db-adapter/templates/deployment.yaml b/kubernetes/so/charts/so-request-db-adapter/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-request-db-adapter/templates/service.yaml b/kubernetes/so/charts/so-request-db-adapter/templates/service.yaml
new file mode 100755 (executable)
index 0000000..085d986
--- /dev/null
@@ -0,0 +1,149 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    msb.onap.org/service-info: '[
+          {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/services",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1" ,
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/updateInfraRequest",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/getInfraRequest",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/getSiteStatus",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/updateServiceOperationStatus",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/initResourceOperationStatus",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/getResourceOperationStatus",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/updateResourceOperationStatus",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/infraActiveRequests/getCloudOrchestrationFiltersFromInfraActive",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/infraActiveRequests/getOrchestrationFiltersFromInfraActive",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/infraActiveRequests/checkVnfIdStatus/{operationalEnvironmentId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/reqdb",
+        "version": "v1",
+        "url": "/RequestsDbAdapter/infraActiveRequests/checkInstanceNameDuplicate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         }
+         ]'
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-request-db-adapter/values.yaml b/kubernetes/so/charts/so-request-db-adapter/values.yaml
new file mode 100755 (executable)
index 0000000..b57f71e
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 AT&T USA\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#       http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+image: onap/so/request-db-adapter:latest\r
+pullPolicy: IfNotPresent\r
+replicaCount: 1\r
+minReadySeconds: 10\r
+containerPort: 8083\r
+logPath: ./logs/reqdb/\r
+app: request-db-adapter\r
+service:\r
+    type: ClusterIP\r
+    internalPort: 8083\r
+    externalPort: 8083\r
+    portName: so-reqdb-port\r
+updateStrategy:\r
+    type: RollingUpdate\r
+    maxUnavailable: 1\r
+    maxSurge: 1\r
+# Resource Limit flavor -By Default using small\r
+flavor: small\r
+# Segregation for Different environment (Small and Large)\r
+resources:\r
+  small:\r
+    limits:\r
+      memory: 4Gi\r
+      cpu: 2000m\r
+    requests:\r
+      memory: 1Gi\r
+      cpu: 500m\r
+  large:\r
+    limits:\r
+      memory: 8Gi\r
+      cpu: 4000m\r
+    requests:\r
+      memory: 2Gi\r
+      cpu: 1000m\r
+livenessProbe:\r
+    path: /manage/health\r
+    port: 8083\r
+    scheme: HTTP\r
+    initialDelaySeconds: 600\r
+    periodSeconds: 60\r
+    timeoutSeconds: 10\r
+    successThreshold: 1\r
+    failureThreshold: 3\r
+ingress:\r
+  enabled: false\r
+nodeSelector: {}\r
+tolerations: []\r
+affinity: {}\r
diff --git a/kubernetes/so/charts/so-sdc-controller/Chart.yaml b/kubernetes/so/charts/so-sdc-controller/Chart.yaml
new file mode 100755 (executable)
index 0000000..5c9b234
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+appVersion: "1.0"
+description: A Helm chart for Kubernetes
+name: so-sdc-controller
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-sdc-controller/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-sdc-controller/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..899274c
--- /dev/null
@@ -0,0 +1,69 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+aai:
+  auth: 2630606608347B7124C244AB0FE34F6F
+server:
+  port: 8085
+spring:
+  security:
+    usercredentials:
+    -
+      username: asdc
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: Asdc-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
+mso:
+  msoKey: 07a7159d3bf51a0e53be7a8f89699be7
+  logPath: ./logs/sdc
+  catalog:
+    db:
+      spring:
+        endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8082
+  db:
+    auth: Basic YnBlbDpwYXNzd29yZDEk
+  site-name: onapheat
+  aai:
+    endpoint: https://aai.{{ include "common.namespace" . }}:8443
+  asdc-connections:
+    asdc-controller1:
+      user: mso
+      consumerGroup: sdc-OpenSource-Env1
+      consumerId: sdc-COpenSource-Env11
+      environmentName: AUTO
+      asdcAddress: sdc-be.{{ include "common.namespace" . }}:8443
+      password: 613AF3483E695524F9857643B697FA51C7A9A0951094F53791485BF3458F9EADA37DBACCCEBD0CB242B85B4062745247
+      pollingInterval: 60
+      pollingTimeout: 60
+      relevantArtifactTypes: HEAT,HEAT_ENV,HEAT_VOL
+      activateServerTLSAuth: false
+      keyStorePassword:
+      keyStorePath:
+      watchDogTimeout: 60
+      isFitlerInEmptyResources: true
+      messageBusAddress: message-router.{{ include "common.namespace" . }},message-router.{{ include "common.namespace" . }}
+  asdc:
+    config:
+      key: 566B754875657232314F5548556D3665
+      components:
+        count: 3,
+        componentNames: SO,AAI,SDNC
+  scheduling:
+    enabled: false
+  adapters:
+    requestDb:
+      auth: Basic YnBlbDptc28tZGItMTUwNyE=
+      endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
diff --git a/kubernetes/so/charts/so-sdc-controller/templates/configmap.yaml b/kubernetes/so/charts/so-sdc-controller/templates/configmap.yaml
new file mode 100755 (executable)
index 0000000..a03dbd8
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-sdc-controller/templates/deployment.yaml b/kubernetes/so/charts/so-sdc-controller/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-sdc-controller/templates/service.yaml b/kubernetes/so/charts/so-sdc-controller/templates/service.yaml
new file mode 100755 (executable)
index 0000000..9746e3f
--- /dev/null
@@ -0,0 +1,59 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    msb.onap.org/service-info: '[
+        {
+        "serviceName": "so/sdc",
+        "version": "v1",
+        "url": "/treatNotification/v1",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/sdc",
+        "version": "v1",
+        "url": "/statusData/v1",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         }
+        ]'
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-sdc-controller/values.yaml b/kubernetes/so/charts/so-sdc-controller/values.yaml
new file mode 100755 (executable)
index 0000000..f5a5176
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+image: onap/so/asdc-controller:latest
+pullPolicy: IfNotPresent
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 8085
+logPath: ./logs/sdc/
+app: sdc-controller
+service:
+    type: ClusterIP
+    internalPort: 8085
+    externalPort: 8085
+    portName: so-sdc-port
+updateStrategy:
+    type: RollingUpdate
+    maxUnavailable: 1
+    maxSurge: 1
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      memory: 4Gi
+      cpu: 2000m
+    requests:
+      memory: 1Gi
+      cpu: 500m
+  large:
+    limits:
+      memory: 8Gi
+      cpu: 4000m
+    requests:
+      memory: 2Gi
+      cpu: 1000m
+livenessProbe:
+    path: /manage/health
+    port: 8085
+    scheme: HTTP
+    initialDelaySeconds: 600
+    periodSeconds: 60
+    timeoutSeconds: 10
+    successThreshold: 1
+    failureThreshold: 3
+ingress:
+  enabled: false
+nodeSelector: {}
+tolerations: []
+affinity: {}
diff --git a/kubernetes/so/charts/so-sdnc-adapter/Chart.yaml b/kubernetes/so/charts/so-sdnc-adapter/Chart.yaml
new file mode 100755 (executable)
index 0000000..b437fd3
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+appVersion: "1.0"
+description: A Helm chart for Kubernetes
+name: so-sdnc-adapter
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-sdnc-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-sdnc-adapter/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..26916f9
--- /dev/null
@@ -0,0 +1,165 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+server:
+    port: 8086
+mso:
+    async:
+        core-pool-size: 50
+        max-pool-size: 50
+        queue-capacity: 500
+    logPath: ./logs/sdnc
+    catalog:
+        db:
+          spring:
+            endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8082
+    db:
+      auth: Basic cGFzc3dvcmQxJA==
+    site-name: onapheat
+org:
+    onap:
+        so:
+            adapters:
+                sdnc:
+                    '.':
+                        put: PUT|60000|sdncurl5|
+                        query: GET|60000|sdncurl2|
+                        restdelete: DELETE|60000|sdncurl5|
+                    '':
+                        contrail-route-topology-operation:
+                            activate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            create: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            delete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            unassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                        network-topology-operation:
+                            activate: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            assign: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            changeassign: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            changedelete: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            delete: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            reserve: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            rollback: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                        port-mirror-topology-operation:
+                            activate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            disable: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            enable: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            unassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                        security-zone-topology-operation:
+                            activate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            create: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            delete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            unassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                        service-homing-operation:
+                            homing: POST|60000|sdncurl3|sdnc-homing-header|com:att:sdnctl:aicHoming
+                        service-topology-operation:
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            delete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            rollback: POST|270000|sdncur10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                        svc-topology-operation:
+                            activate: POST|285000|sdncurl8|sdnc-request-header|com:att:sdnctl:nbncapi
+                            assign: POST|285000|sdncurl8|sdnc-request-header|com:att:sdnctl:nbncapi
+                            delete: POST|285000|sdncurl8|sdnc-request-header|com:att:sdnctl:nbncapi
+                        vnf-topology-operation:
+                            activate: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            assign: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            changeassign: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            changedelete: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            delete: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                            rollback: POST|270000|sdncurl6|sdnc-request-header|org:onap:sdnctl:vnf
+                    bpelauth: cGFzc3dvcmQxJA==
+                    bpelurl: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/SDNCAdapterCallbackService
+                    generic-resource:
+                        network-topology-operation:
+                            activate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            unassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                        vf-module-topology-operation:
+                            activate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            changeassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            changedelete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            delete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            rollback: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            unassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                        vnf-topology-operation:
+                            activate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            assign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            changeassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            changedelete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            deactivate: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            delete: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            rollback: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                            unassign: POST|270000|sdncurl10|sdnc-request-header|org:onap:sdnc:northbound:generic-resource
+                    infra:
+                        '':
+                            query: GET|60000|sdncurl5|
+                    mobility:
+                        '':
+                            query: GET|60000|sdncurl5|
+                    myurl: http://so-sdnc-adapter{{ include "common.namespace" . }}:8086/adapters/rest/SDNCNotify
+                    rest:
+                        bpelurl: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081/mso/WorkflowMessage
+                    sdncauth: 406B2AE613211B6FB52466DE6E1769AC
+                    sdncconnecttime: 5000
+                    sdncurl10: http://sdnc.{{ include "common.namespace" . }}:8282/restconf/operations/GENERIC-RESOURCE-API:'
+                    sdncurl11: http://sdnc.{{ include "common.namespace" . }}:8282/restconf/operations/VNFTOPOLOGYAIC-API:'
+                    sdncurl12: http://sdnc.{{ include "common.namespace" . }}:8282/
+                    sdncurl5: http://sdnc.{{ include "common.namespace" . }}:8282/restconf/config
+                    sdncurl6: http://sdnc.{{ include "common.namespace" . }}:8282/restconf/operations/VNF-API:'
+                    sdncurl8: http://sdnc.{{ include "common.namespace" . }}:8282/restconf/operations/NBNC-API:'
+                    sdncurl9: http://sdnc.{{ include "common.namespace" . }}:8282/restconf/operations/NORTHBOUND-API:service-topology-operation
+                    service:
+                        infra:
+                            service-topology-infra-activate-operation: POST|90000|sdncurl9|sdnc-request-header|com:att:sdnctl:northbound-api:v1
+                            service-topology-infra-assign-operation: POST|120000|sdncurl9|sdnc-request-header|com:att:sdnctl:northbound-api:v1
+                            service-topology-infra-delete-operation: POST|90000|sdncurl9|sdnc-request-header|com:att:sdnctl:northbound-api:v1
+                            service-topology-infra-release-operation: POST|90000|sdncurl9|sdnc-request-header|com:att:sdnctl:northbound-api:v1
+                    vfmodule:
+                        '':
+                            query: GET|60000|sdncurl12|
+spring:
+  security:
+    usercredentials:
+    -
+      username: sdnc
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SDNC-Client
+    -
+      username: sitecontrol
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SiteControl-Client
+    -
+      username: bpel
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPEL-Client
+    -
+      username: sniro
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SNIRO-Client
+    -
+      username: apih
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: MSO-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
diff --git a/kubernetes/so/charts/so-sdnc-adapter/templates/configmap.yaml b/kubernetes/so/charts/so-sdnc-adapter/templates/configmap.yaml
new file mode 100755 (executable)
index 0000000..a03dbd8
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-sdnc-adapter/templates/deployment.yaml b/kubernetes/so/charts/so-sdnc-adapter/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-sdnc-adapter/templates/service.yaml b/kubernetes/so/charts/so-sdnc-adapter/templates/service.yaml
new file mode 100755 (executable)
index 0000000..39f96a7
--- /dev/null
@@ -0,0 +1,59 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    msb.onap.org/service-info: '[
+         {
+        "serviceName": "so/sdnc",
+        "version": "v1",
+        "url": "/SDNCAdapter",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/sdnc",
+        "version": "v1",
+        "url": "/SDNCNotify/SNIROResponse/{correlator}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"1",
+        "lb_policy":"ip_hash"
+         }
+         ]'
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-sdnc-adapter/values.yaml b/kubernetes/so/charts/so-sdnc-adapter/values.yaml
new file mode 100755 (executable)
index 0000000..55b5965
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+image: onap/so/sdnc-adapter:latest
+pullPolicy: IfNotPresent
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 8086
+logPath: ./logs/sdnc/
+app: sdnc-adapter
+service:
+    type: ClusterIP
+    internalPort: 8086
+    externalPort: 8086
+    portName: so-sdnc-port
+updateStrategy:
+    type: RollingUpdate
+    maxUnavailable: 1
+    maxSurge: 1
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      memory: 4Gi
+      cpu: 2000m
+    requests:
+      memory: 1Gi
+      cpu: 500m
+  large:
+    limits:
+      memory: 8Gi
+      cpu: 4000m
+    requests:
+      memory: 2Gi
+      cpu: 1000m
+livenessProbe:
+    path: /manage/health
+    port: 8086
+    scheme: HTTP
+    initialDelaySeconds: 600
+    periodSeconds: 60
+    timeoutSeconds: 10
+    successThreshold: 1
+    failureThreshold: 3
+ingress:
+  enabled: false
+nodeSelector: {}
+tolerations: []
+affinity: {}
diff --git a/kubernetes/so/charts/so-ssl-certs/Chart.yaml b/kubernetes/so/charts/so-ssl-certs/Chart.yaml
new file mode 100755 (executable)
index 0000000..02cf08f
--- /dev/null
@@ -0,0 +1,17 @@
+# Copyright © 2018 AT&T USA
+#
+# 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: A Helm chart for SSL certs secrets
+name: so-ssl-certs
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/keystore_password b/kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/keystore_password
new file mode 100755 (executable)
index 0000000..41c04e7
--- /dev/null
@@ -0,0 +1 @@
+bXNvNHlvdQ==
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/readme.txt b/kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/readme.txt
new file mode 100755 (executable)
index 0000000..4a8a427
--- /dev/null
@@ -0,0 +1 @@
+kubectl create -f create_secret.yaml
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/truststore_password b/kubernetes/so/charts/so-ssl-certs/resources/config/client-certs/truststore_password
new file mode 100755 (executable)
index 0000000..d2a7213
--- /dev/null
@@ -0,0 +1 @@
+bXNvX0RvbWFpbjIuMF80eW91
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/cadi_keystore_password b/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/cadi_keystore_password
new file mode 100755 (executable)
index 0000000..4c48983
--- /dev/null
@@ -0,0 +1 @@
+QT9kUmF3S0F6Z3RjbSZKZ1RoSDBAZ2Fi
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/cadi_truststore_password b/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/cadi_truststore_password
new file mode 100755 (executable)
index 0000000..8df3b70
--- /dev/null
@@ -0,0 +1 @@
+NDRDLGVJYV4wZ1U7NyxlME5SZnpPRUJL
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/mso-server-key-store.jks b/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/mso-server-key-store.jks
new file mode 100755 (executable)
index 0000000..cdb7ff9
--- /dev/null
@@ -0,0 +1 @@
+/u3+7QAAAAIAAAABAAAAAQAWbTE5MzIwQGRldi5tc28uYXR0LmNvbQAAAWTrzumRAAAFATCCBP0wDgYKKwYBBAEqAhEBAQUABIIE6eDdUV9yjx02khFU1J5CPji8WbtA6j5R8qi3XpoRaaap7dFGLE69CL895XzZV+ngWbyYFvl2hdKTwuyQY8MESb53gttlGRHQ1gD2pS/TseNsZA/X4YMdcaB0n7JrPOG+qHedV128iL4HY3C63xLvi+YnwInmafiYRdFM//UZJzWbGiVwP96aUb5ZSg3yFVKBkNP6l9IIHQKQr66DN5kPxJ5D5tScBcxgePP08MO9ec+Pfgyc9yJawnFCbEL3gncePanYY6rU/KsMQ2DLhaHV+c8GAs1IrRjUTxiCJr8c/bC6Omp8BnSzhmPcNWHcov92adCDJI2xRfo1/CJZuCAw5XVLbPwjcGQr6x1Z8UiYi6hx1b9O+3hh6UyIqXrD+Q47J9mNrFm9vDPOJwRWtYbbQFra3S8ogyUfS2gqd+O9GnXLbRzJbju3Bz4FbiLdBfN/ubI5QkePDLbTXi5AawMLlJ6MndXhKKwhaEUgz36qJJhJ4c+enw3ktcingE6L6Vdmxw9/5OIQJgP8IRJ3zM2OBfVBGbeNeS2zQJuCORMUvJg1/mE5Q0WepyOIs0CSLaUsuwt+0wcwda1sa5jjRjmgoJwnadL3Isb1THkcCvBxBBszAVSqODDDj4zzSeLEc7Fr7ikrJcTFTrNZ7/z2W4SlUfIkCo+llnXVYUeY6OpGgdLm3Lndb1yJ3NJCnFtr9xRbY6Ph+cE6ON1VwrTn+ZrlBvzkZC4qp6PU59w+ZI4BuY2SraknOgZeKRLpGnS6hqAaonwV/O6lsQVuptrKSa7blYwLeC+eDqApvM8lzUb2DHj7REMjcTqqCIWhjZsLBKsnozSmhTHHUsjFO0L8lgV1tR7ZE8uYHJyRROyerXChAmWv8WUgdAIbLZM48HyXFxXjOjfyVd3z1GMgDVq25uKxmCudr9fVC4TWAynIqV1ngUiTLrkX7jaHBBJSozI4ybuUhFhcUAp97hC/Xes9bPkcPM0J/WKcwm+KgiS4/nHvsdS0AOxUCgzQSzE/JHDgraxJUe49p4wREjaVpqbgWC4gLBGsVRR0dbN4pEQc76q6fx87TriUOxy/aNBA2x7r0/MKqKewmIRgHrQ85L/iayYf33Hkfemix5Ir0pczPlkc6J5olzliSpUAT9/Z+P1L6gTmlg9yvlrqAbA+0BP1AiwRmIr2DePqzJ4JhOWcnSaXXVUWW7YJoPZXKxMnXhNkrISc5lAeOGtleUxLzL1qv/DqJbaAsP4yImT/81owXTdTvpvqDPgi0/HAET40QCHNMGlddT201/sLTxaRl0Jw2nkqB9trO4Q1orqVWRvaxIrT/B0Henql8qlBFZydn+oaTh93g5Mb4od11kbLWgGPkCsnaM44tSTw6olOz51dnSPT/W4EnUgxsbnoSIZTh7GBl+/6V9Idxl3eKOj3mIrHl+5TcTudoAO37iNf2jeyN5Sgma5GbvlWqScESBj4b+X39yCtJrXzcyUlfPkzm+JY/aPdzuOs5JFwEp55+/V+aIc91joiv4qo8OvIsq82X/+CM6P1v/RlVOLhuUcGl2MkwtGJW0pCoxCu4CHIHdVZsDY7lqRJoxHAKamGi/Xxkyh2J9U5AJjk5lLekXd/xeSlW2w+lPURrCLxEVllMgbraWz7o0TK4Ujz9qFkuQwc8ZZFeh0T+2EZZYUs1H954AAAAAMABVguNTA5AAAJkDCCCYwwggh0oAMCAQICE1IAAAn6oIn4H22KmpAAAAAACfowDQYJKoZIhvcNAQELBQAwUzELMAkGA1UEBhMCVVMxDDAKBgNVBAoTA0FUVDEMMAoGA1UECxMDQ1NPMSgwJgYDVQQDEx9BVFQgQUFGIENBREkgVGVzdCBJc3N1aW5nIENBIDAyMB4XDTE4MDczMDE1MTkyM1oXDTE5MDEzMDE1MjkyM1owgcgxCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhNaXNzb3VyaTERMA8GA1UEBxMIU3QgTG91aXMxGjAYBgNVBAoTEUFUVCBTZXJ2aWNlcyxJbmMuMSMwIQYDVQQLDBptMTkzMjBAZGV2Lm1zby5hdHQuY29tOklTVDEwMC4GA1UEAxMnbXNvLWhvdGZpeDEtaGEwMS5lY29tcC5pZG5zLmNpcC5hdHQuY29tMSAwHgYJKoZIhvcNAQkBFhFycDY3NjhAdXMuYXR0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPKfFcl3UYXKPzt+Qd9C8atkPH2U4wk+LUE0HiXE9ei6wykYB1/ajV47gerU+iBSlb1TPOsTXD6Be+2ybXUVui2D6RKCbiQXAsukbwYb/0Br2TML6EXZLPeaDtivDUYscs3nngB640mEV5CXISQ7zliYwa4LpCLRC7kgNK8n1tUmrXRkn7UcwFRNnzJgHwY5Q7oBHIt/bkMsjwLFA4wRM3ZkzoJY3M5J3TGlVRP0AgnNjSEixOCKxErSlDVdVtKkrQGF6i3iSdiBeUJHc/uWPwzBsNJmM7V8foBIbs+4yhUZfSOsCrpIre5PuwoOPSZQpJ2hKL2nw8GFHsmgfHtAVwcCAwEAAaOCBeEwggXdMIIEwQYDVR0RBIIEuDCCBLSCJ21zby1ob3RmaXgxLWhhMDEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIZbXNvLWFwaS1oYW5kbGVyLWluZnJhLXN2Y4InbXNvLWFwaWgtZGV2MS1zMS5lY29tcC5pZG5zLmNpcC5hdHQuY29tgidtc28tYXBpaC1kZXYxLXMyLmVjb21wLmlkbnMuY2lwLmF0dC5jb22CJ21zby1hcGloLWRldjItczEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYInbXNvLWFwaWgtZGV2Mi1zMi5lY29tcC5pZG5zLmNpcC5hdHQuY29tgiptc28tYXBpaC1ob3RmaXgxLXMxLmVjb21wLmlkbnMuY2lwLmF0dC5jb22CF21zby1hc2RjLWNvbnRyb2xsZXItc3Zjgidtc28tYnBtbi1kZXYxLXMxLmVjb21wLmlkbnMuY2lwLmF0dC5jb22CJ21zby1icG1uLWRldjEtczIuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYInbXNvLWJwbW4tZGV2Mi1zMS5lY29tcC5pZG5zLmNpcC5hdHQuY29tgidtc28tYnBtbi1kZXYyLXMyLmVjb21wLmlkbnMuY2lwLmF0dC5jb22CKm1zby1icG1uLWhvdGZpeDEtczEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYISbXNvLWJwbW4taW5mcmEtc3Zjghptc28tY2F0YWxvZy1kYi1hZGFwdGVyLXN2Y4IobXNvLWNhdGRiLWRldjEtczEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIobXNvLWNhdGRiLWRldjEtczIuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIobXNvLWNhdGRiLWRldjItczEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIobXNvLWNhdGRiLWRldjItczIuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIrbXNvLWNhdGRiLWhvdGZpeDEtczEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIkbXNvLWRldjEtaGEwMS5lY29tcC5pZG5zLmNpcC5hdHQuY29tgiRtc28tZGV2MS1oYTAyLmVjb21wLmlkbnMuY2lwLmF0dC5jb22CJ21zby1ob3RmaXgxLWhhMDIuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIZbXNvLW9wZW5zdGFjay1hZGFwdGVyLXN2Y4IebXNvLXJlcXVlc3QtZGItYWRhcHRlci1hdHQtc3Zjghptc28tcmVxdWVzdC1kYi1hZGFwdGVyLXN2Y4IUbXNvLXNkbmMtYWRhcHRlci1zdmOCJ21zby1zZG5jLWRldjEtczEuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYInbXNvLXNkbmMtZGV2MS1zMi5lY29tcC5pZG5zLmNpcC5hdHQuY29tgidtc28tc2RuYy1kZXYyLXMxLmVjb21wLmlkbnMuY2lwLmF0dC5jb22CJ21zby1zZG5jLWRldjItczIuZWNvbXAuaWRucy5jaXAuYXR0LmNvbYIqbXNvLXNkbmMtaG90Zml4MS1zMS5lY29tcC5pZG5zLmNpcC5hdHQuY29tMB0GA1UdDgQWBBR2DMIWdySIoXCIDC8av43NdNTujzAfBgNVHSMEGDAWgBQoDqF6xyzICzN6SMENsBQadLIADzBEBgNVHR8EPTA7MDmgN6A1hjNodHRwOi8vYWFmY3JsLml0LmF0dC5jb20vYWFmY2FkaS10ZXN0LXNlcnZlcnMwMi5jcmwwTwYIKwYBBQUHAQEEQzBBMD8GCCsGAQUFBzAChjNodHRwOi8vYWFmY3JsLml0LmF0dC5jb20vYWFmY2FkaS10ZXN0LXNlcnZlcnMwMi5jcnQwPwYJKwYBBAGCNxQCBDIeMABJAFAAUwBFAEMASQBuAHQAZQByAG0AZQBkAGkAYQB0AGUATwBmAGYAbABpAG4AZTANBgkqhkiG9w0BAQsFAAOCAQEArDNdMdFZ/fP2qPV2A3mg+tuEGcWO1g8pMNisG5Qc2dX1jjQcYdLyLCzDzsMNaCSOtbHUHA6iqze3ID43gp6faYKPSSr+NK22KSoHXVoadYvnIy3zTky/+E2wJ7XqxLf3U2yDWVwki4Dz+zdpvoy99wPCoatLZmxhs3lto88d44jN4Djhqo7xD4FzpybvH7hBpdrKMILUZKx33WiE0L/ymMP9JMSmPKJ4hvs9MNuwLTSR/6L6TSKeMq8GEJSR9ob/ZoA7Tj77oNwV4abizEd6165l0Rcu+wLshJDbe5bCZVFQCBli1AjA17DsMl5kC97ez/IlQlyy9R2bhdhk/xFfhgAFWC41MDkAAAR8MIIEeDCCA2CgAwIBAgIKYQRT6QAAAAAACjANBgkqhkiG9w0BAQsFADBIMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDQVRUMQwwCgYDVQQLEwNDU08xHTAbBgNVBAMTFEFUVCBBQUYgQ0FESSBURVNUIENBMB4XDTE2MTAwNDEyNTQ0OVoXDTIxMTAwNDEzMDQ0OVowUzELMAkGA1UEBhMCVVMxDDAKBgNVBAoTA0FUVDEMMAoGA1UECxMDQ1NPMSgwJgYDVQQDEx9BVFQgQUFGIENBREkgVGVzdCBJc3N1aW5nIENBIDAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy9je7y3hwb/d0ISYTZK1cdDyCdjAIyZorPnQxwp2dNOhoHsd+JMsUn8DtDu+f+PFFQ+szCOU64+Z2sRRhCOjw47ulmmFQvJ7aRDlMcHuKhsF6uZV/IckATP6bWlZl5DxBNzEWj9d/cSNX06VDl+6FngaGqGApvUrxBY13nOACd2ofBN7KTaZT3bpIh6k66RkVUOmTXLl18AeKpn7uj/COqGWDUkI0aEtUoqwlPQoAoERU/AlncYW4wtf/bCaapWvSs9uASSOzmw9SZ+Z21IU1H9xw7PjwRZtcQAiLayinMOepeAslkm74nmsjX+88XxxrZs4IkolWut6DMvDj88enwIDAQABo4IBVzCCAVMwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFCgOoXrHLMgLM3pIwQ2wFBp0sgAPMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMAsGA1UdDwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFBZRX9l5slicubTi/gOljxKxiy+FMEcGA1UdHwRAMD4wPKA6oDiGNmh0dHA6Ly9hYWZjcmwuaXQuYXR0LmNvbS9hYWZjYWRpLXRlc3QtaW50ZXJtZWRpYXRlLmNybDBSBggrBgEFBQcBAQRGMEQwQgYIKwYBBQUHMAKGNmh0dHA6Ly9hYWZjcmwuaXQuYXR0LmNvbS9hYWZjYWRpLXRlc3QtaW50ZXJtZWRpYXRlLmNydDApBgNVHSUEIjAgBggrBgEFBQcDAgYIKwYBBQUHAwEGCisGAQQBgjcUAgEwDQYJKoZIhvcNAQELBQADggEBAJMrFqAzVkpbKTZ7NT8uEU94EJKs2FqsfSAtVUtAdJoiwKaSqMdvwMVBNQNcDBf7XF0bDPbUbMKJiEAZGWg9ZNtoXD4YokvAgae0Lh2RPu1GxoBpzxhGeyuNRXoUSsHbs/5UgJyWDj8fi9aJRuT3zSSrEENnKUJn1sXRAXvZWz8wVZI7EB1xaW6W6MYzg5eXpMd+AKGxDnHbMhgGdrMZMqhY5s7XxQmB/9T2oFtsduor374rDgJheMEELhiI1mA8TBDx5HnQVOn+C+fKFhc8TA584ZdRwN+DzBRuuaDZa9OZhUm/G+Hi1km8CRzcsYf35f6PNa5TxIkShRBDRIQU/s8ABVguNTA5AAAEVTCCBFEwggM5oAMCAQICCmECXqIAAAAAAA0wDQYJKoZIhvcNAQEFBQAwUzELMAkGA1UEBhMCVVMxDDAKBgNVBAoTA0FUVDEMMAoGA1UECxMDQ1NPMSgwJgYDVQQDEx9BVFQgRW50ZXJwcmlzZSBJbnRlcm5hbCBSb290IENBMB4XDTE2MDgzMTEyMDUzNloXDTI2MDgzMTEyMTUzNlowSDELMAkGA1UEBhMCVVMxDDAKBgNVBAoTA0FUVDEMMAoGA1UECxMDQ1NPMR0wGwYDVQQDExRBVFQgQUFGIENBREkgVEVTVCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL1G8yB2Cd0bIajD+9CNUmOdTB0YQHS9NetWoHI9pKz+jLyIYEZyqZ1540vr2LITC3vWiWBhnZelbLvqbK/46zTEp8d7xQaD7y52xCQpamTNRaOLYE8hwvB2YuqbRAFNVMgJxIK24HBOHRdTzneVmYYVPJwR2TW2YDAWY/v0wKAZuT0Im0fikqojyi/3cGpoYweI5TQppNKBEnB180fFOMfwL6Xf7HD748NLDUnrvhBQgoKvEQZpzalwhFnh5zB6RyYnrwKftfyRZDYt0mb0kmJ4ubVyQNXs+vTDdI1yTGEO4/4/Jm0Tv0h9RqiuO+XyaTGuN9E1YoDbvXnJ58J4pJkCAwEAAaOCATAwggEsMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBQWUV/ZebJYnLm04v4DpY8SsYsvhTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBSZHo0oHLdK+j4K6CCoCpuk2wBs5TBJBgNVHR8EQjBAMD6gPKA6hjhodHRwOi8vdXZlcnNlbWVkaWEuY3NvLmF0dC5jb20vY3JsL2F0dF9pbnRlcm5hbF9yb290LmNybDBUBggrBgEFBQcBAQRIMEYwRAYIKwYBBQUHMAKGOGh0dHA6Ly91dmVyc2VtZWRpYS5jc28uYXR0LmNvbS9haWEvYXR0X2ludGVybmFsX3Jvb3QuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQB4a6ReGBnTGKaN1R4oEUVd2fJk91PA1lNCsaTRz93wa8Ooyk/IKBR05ymGD1lAUNet1y6/bSNt01TQHGx+SHFjCCLZ7tapSknEnYN//urqQ9hw3/IOfByWyRy2apTLp8TLG33b/pZ3bEn43Za/6GKsaZzXmx3F65t5NA1TOKogUa3ZTsknJjR4tYWrxuCLRF+ggZRGmcV1e+pbFtGlZ18t9sF89crxRg3WY/q/MK3ND6rKH/xk03FfmPO4/r3U9Gc4IqqD58lxE8z7faftyNaSCPL60+2NpO+npHDawvakyQrw+ZTafElCWVfx8smObi2wmwOUqSu3fHZPWJVgZrDCgSJjtpgAxwJZjgWqqGWm38+cNXM=
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/mso-trust-store.jks b/kubernetes/so/charts/so-ssl-certs/resources/config/server-certs/mso-trust-store.jks
new file mode 100755 (executable)
index 0000000..d659ed8
--- /dev/null
@@ -0,0 +1 @@
+/u3+7QAAAAIAAAAHAAAAAgAIY2FfYWFmXzIAAAFk687pkgAFWC41MDkAAASYMIIElDCCA3ygAwIBAgIQAf2j627KdciIQ4tyS8+8kTANBgkqhkiG9w0BAQsFADBhMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBDQTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaME0xCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJzAlBgNVBAMTHkRpZ2lDZXJ0IFNIQTIgU2VjdXJlIFNlcnZlciBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANyuWJBNwcQwFZA1W248ghX1LFy949v/cUP6ZCWA1O4Yok3wZtAKc24RmDYXZK83nf36QYSvx6+M/hpzTc8zl5CilodTgyu5pnVILR1WN3vaMTIa16yrBvSqXUu3R0bdKpPDkC55gIDvEwRqFDu1m5K+wgdlTvza/P96rtxcflUxDOg5B6TXvi/TC2rSsd9f/ld0Uzs1gN2ujkSYs58O09rg1/RrKatEp0tYhG2SS4HD2nOLEpdIkARFdRrdNzGXkujNVA075ME/OV4uuPNcfhCOhkEAjUVmR7ChZc6gqikJTvOX6+guqw9ypzAO+sf0/RR3w6RbKFfCs/mC/bdFWJsCAwEAAaOCAVowggFWMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgGGMDQGCCsGAQUFBwEBBCgwJjAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMHsGA1UdHwR0MHIwN6A1oDOGMWh0dHA6Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RDQS5jcmwwN6A1oDOGMWh0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RDQS5jcmwwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LmRpZ2ljZXJ0LmNvbS9DUFMwHQYDVR0OBBYEFA+AYRyCMWHVLyjnjUY4tCzhxtniMB8GA1UdIwQYMBaAFAPeUDVW0Uy7ZvCj4hsbw5eyPdFVMA0GCSqGSIb3DQEBCwUAA4IBAQAjPt9L0jFCpbZ+QlwaRMxp0Wi0XUvgBCFsS+JtzLHgl4+mUwnNqipl5TlPHoOlblyYoiQm5vuh7ZPHLgLGTUq/sELfeNqzqPlt/yGFUzZgTHbO7Djc1lGA8MXW5dRNJ2Srm8c+cftIl7gzbckTB+6WohsYFfZcTEDts8Ls/3HB40f/1LkAtDdC2iDJ6m6K7hQGrn2iWZiIqBtvLfTyyRRfJs8sjX7tN8Cp1Tm5gr8ZDOo0rwAhaPitc+LJMto4JQtV05od8GiG7S5BNO98pVAdvzr508EIDObtHopYJeS4d60tbvVS3bR0j6tJLp07kzQoH3jOlOrHvdPJbRzeXDLzAAAAAgAIY2FfYWFmXzEAAAFk687pkgAFWC41MDkAAAOzMIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBhMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBDQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsBCSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7PT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbRTLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/EsrhMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJFPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0lsYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQkCAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4AAAACAAhjYV9hYWZfMAAAAWTrzumSAAVYLjUwOQAAA4UwggOBMIICaaADAgECAhBWXvBYii7isEvy+S294wIkMA0GCSqGSIb3DQEBBQUAMFMxCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNBVFQxDDAKBgNVBAsTA0NTTzEoMCYGA1UEAxMfQVRUIEVudGVycHJpc2UgSW50ZXJuYWwgUm9vdCBDQTAeFw0xMzExMjEwMzU4MjVaFw0zODExMjEwNDA4MjVaMFMxCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNBVFQxDDAKBgNVBAsTA0NTTzEoMCYGA1UEAxMfQVRUIEVudGVycHJpc2UgSW50ZXJuYWwgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJqOhgyilRJEGMVM5+Bk3hjSflwhY0dNCxXWkAmHuTWY6alP1oQhfMC1RsXh6kWn9glZrHv157E4Oo0cARvb0hwcwZcg1hTUWb4WSZkVH8g7QScbnWPaDbeVUhci43LKPv0Sch8F6GkTfyUtdxTY3l8hAEHkYjElT6ICY3WrNnVo+DmnAo/Dask91Nkvyld4R/msXDueMQCgDHDDIWo5qvHkz0sK9mJfD2EYO/Ylzb/3hxo/+u5avJqxXbBZgfmh90LnvbPwDjiggMwa8AhwpgYeVEDhWOuw4rnoTk/NtqQFjEO1il0vzUfcV6CS4OmkILRe2W1q12cVpaHEwCIEeFUCAwEAAaNRME8wCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJkejSgct0r6PgroIKgKm6TbAGzlMBAGCSsGAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQCG9iOwv3JRJDDIUxI45eu+3s/TmBN0lMEvoJm+1X8GEIrI3qGgmdeutJAr3E1GiYrZ9IL2ittF4xLNAF5zXDS7bxP0rR1X3HlJ7PZR/pklVSyW9/mD2NIb35ov+nbGrHrtEY1vA7rEu3rdZ3knVKRRsxiG1MUvTlP9z3CNAxQLTLZ5Dixc8WgY1SkUY5KVnR8bui7l46Bb4ON3V9ZyI+9Zhqng+2aHe0It5NyWiB/Jd5vw/9m5XxH964zab5lmppwuaxrpri7A8Z8M3YaQV5vFz1+y41epMkzao+WQuHvLos8MORya3MHIOYYco1w29u5mNDVY0vBwjhRyD9TJZ8LVAAAAAgAIY2FfYWFmXzYAAAFk687pkgAFWC41MDkAAATXMIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCByjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCByjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvJAgIKXo1nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKzj/i5Vbext0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIzSdhDY2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQGBO+QueQA5N06tRn/Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+rCpSx4/VBEnkjWNHiDxpg8v+R70rfk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKvMzEzMA0GCSqGSIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzEp6B4Eq1iDkVwZMXnl2YtmAl+X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKEKQsTb47bDN0lAtukixlE0kF6BWlKWE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiCKm0oHw0LxOXnGiYZ4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vEZV8NhnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNqAAAAAgAIY2FfYWFmXzUAAAFk687pkgAFWC41MDkAAAU8MIIFODCCBCCgAwIBAgIQUT+5dDhwtzRAQY0wkwaZ/zANBgkqhkiG9w0BAQsFADCByjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwHhcNMTMxMDMxMDAwMDAwWhcNMjMxMDMwMjM1OTU5WjB+MQswCQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxLzAtBgNVBAMTJlN5bWFudGVjIENsYXNzIDMgU2VjdXJlIFNlcnZlciBDQSAtIEc0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAstgFyhx0LbUXVjnFSlIJluhL2AzxaJ+aQihiw6UwU35VEYJbA3oNL+F5BMm0lncZgQGUWfm893qZJ4Itt4PdWid/sgN6nFMl6UgfRk/InSn4vnlW9vf92Tpo2otLgjNBEsPIPMzWlnqEIRoiBAMnF4scaGGTDw5RgDMdtLXO637QYqzus3sBdO9pNevK1T2p7peYyo2qRA4lmUoVlqTObQJUHypqJuIGOmNIrLRM0XWTUP8TL9ba4cYY9Z/JJV3zADreJk20KQnNDz0jbxZKgRb78oMQw7jW2FUyPfG9D72MUpVKFpd6UiFjdS8W+cRmvvW1Cdj/JwDNRHxvSz+w9wIDAQABo4IBYzCCAV8wEgYDVR0TAQH/BAgwBgEB/wIBADAwBgNVHR8EKTAnMCWgI6Ahhh9odHRwOi8vczEuc3ltY2IuY29tL3BjYTMtZzUuY3JsMA4GA1UdDwEB/wQEAwIBBjAvBggrBgEFBQcBAQQjMCEwHwYIKwYBBQUHMAGGE2h0dHA6Ly9zMi5zeW1jYi5jb20wawYDVR0gBGQwYjBgBgpghkgBhvhFAQc2MFIwJgYIKwYBBQUHAgEWGmh0dHA6Ly93d3cuc3ltYXV0aC5jb20vY3BzMCgGCCsGAQUFBwICMBwaGmh0dHA6Ly93d3cuc3ltYXV0aC5jb20vcnBhMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTeW1hbnRlY1BLSS0xLTUzNDAdBgNVHQ4EFgQUX2DPYZBV34RDFIpgKrL1evRDGO8wHwYDVR0jBBgwFoAUf9Nlp8Ld7LvwMAnzQzn6Aq8zMTMwDQYJKoZIhvcNAQELBQADggEBAF6UVkndji1l9cE2UbYD49qecxnyH1mrWH5sJgUs+oHXXCMXIiw3k/eG7IXmsKP9H+IyqEVv4dn7ua/ScKAyQmW/hP4WKo8/xabWo5N9Q+l0IZE1KPRj6S7t9/Vcf0uatSDpCr3gRRAMFJSaXaXjS5HoJJtGQGX0InLNmfiIEfXzf+YzguaoxX7+0AjiJVgIcWjmzaLmFN5OUiQt/eV5E1PnXi8tTRttQBVSK/eHiXgSgW7ZTaoteNTCLD0IX4eRnh8OsN4wUmSGiaqdZpwOdgyA8nTYKvi4Os7X1g8RvmurFPW9QaAiY4nxug9vKWNmLT+sjHLF+8fk1A/yO0+MKccAAAACAAhjYV9hYWZfNAAAAWTrzumSAAVYLjUwOQAABfAwggXsMIIE1KADAgECAhBuzHqlpwMgCbjOvPTpUtSRMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHNTAeFw0xMDAyMDgwMDAwMDBaFw0yMDAyMDcyMzU5NTlaMIG1MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBhdCBodHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhIChjKTEwMS8wLQYDVQQDEyZWZXJpU2lnbiBDbGFzcyAzIFNlY3VyZSBTZXJ2ZXIgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALGHhB/CDEX1vKsll6etoj6cuvbBObiLysKsVsblu2WORE9Nzm/tCUrUr04QnGiLLpV7iZsTyuI0NMHzW/NJe2KDSIF00Yh4bAJT+bx/QyZXWDODOzMKF7DQTpEkrYZ9ZBLcdEo0oR0K6pYdCxX8o0s7zmOI0PgtDJSGEMq2mj3K6zecAEg1hilQeOhFY80ZQU/1lex7mNTEcbNQviizj6C5U5z1yiwjqf0UBugYtJroPG6B/eTNNTazUdNp7BK6Vm5vm1fFixTnDsec7UpUaslNxb8Rsa4cZ4HLRFUzmX8kmz9TRX+GGvM8+m1/gfW4StP1hTcctabQCeQYezhO+g8CAwEAAaOCAd8wggHbMDQGCCsGAQUFBwEBBCgwJjAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AudmVyaXNpZ24uY29tMBIGA1UdEwEB/wQIMAYBAf8CAQAwcAYDVR0gBGkwZzBlBgtghkgBhvhFAQcXAzBWMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vY3BzMCoGCCsGAQUFBwICMB4aHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEwNAYDVR0fBC0wKzApoCegJYYjaHR0cDovL2NybC52ZXJpc2lnbi5jb20vcGNhMy1nNS5jcmwwDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEwX6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgsexkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMCgGA1UdEQQhMB+kHTAbMRkwFwYDVQQDExBWZXJpU2lnbk1QS0ktMi02MB0GA1UdDgQWBBQNRFwWU0TBgn4dIKsl9AFj2L55pTAfBgNVHSMEGDAWgBR/02Wnwt3su/AwCfNDOfoCrzMxMzANBgkqhkiG9w0BAQUFAAOCAQEADIMk793DDNlYnP42tuuKgEvRo/ed88xT74Keo6Hml8FYnXVs4B0bTPrRwS0FwOpusiJwVdkgM0AzB8Jlg/qPQzeb6g6abHDu9pyAO9k39Hpt7NAYfUlKypnHGSiivth3JPeFJoZthwVAQWfRJzrt3EgdIs0LC4u89LF7/bSZqOl2KuEaLYdudNOI3R4ixt8WtiuCFAqUXPJQ7K/O/2I3Da1l0wZBU+0CFMi1WCihrOBb7LN/lUr7A8itJtvmZngSStmfQvvhmOZCg5uPj2ck6GEZtd3NtQsmBY7DbsTIdbhGz+IYBl6prqiBmkcW3gwobCUnud63hFjGHzgepMTLZgAAAAIACGNhX2FhZl8zAAABZOvO6ZIABVguNTA5AAADkjCCA44wggJ2oAMCAQICEAM68eanEamguyhksR0J+uUwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTEgMB4GA1UEAxMXRGlnaUNlcnQgR2xvYmFsIFJvb3QgRzIwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBhMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALs3zTTce2vJsmiQrUp1/0a6IQoIjfUZVMn7iNvzrvI6iZE8euarBhprz6wt6F4JJES6Ypp+1qOofuBUdSAFrFC3nGMabDDc2h8Zsdce3v3X4MuUgzeu7B9DTt17LNK9LqUv5Km4rTrUmaS2JembawBgkmD/TyFJGPdnkKthBpyP8rrptOmSMmu181foXRvNjB2rlQSVSfM1LZbjSW3dd+P7SUu0rFUHqY+Vs7Qju0xtRfD2qbKVMLT9TFWMJ0pXFHyCnc1zktMWSgYMjFDRjx4Jvheh5iHK/YPlELyDpQrEZyj2cxQUPUZ2w4cUiSE0Ta8PRQymSaG6u5zFsTODKYUCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFE4iVCAYlebjbuYP+vq5Eu0GF485MA0GCSqGSIb3DQEBCwUAA4IBAQBgZyiUbw5IY+sx3epnGNWJfTzFi0p/6b7bKxffsF9zdyoyEzmBZ0KEI/JFZzXsiL/4j7BhDDSkriBMhMbb+DXhdtnfpkK7x0QIhn82dCRa2mwNFFk1vfJJ3bYfybMNRyo9mS+7XLu11CDhmV9TRhXbaJvw8zDVPjHijYSe44ra2pY+NROlX/D5cFBwR0ERVxlOwI+uBsSVExcvGyWfdfKxjpmhbxOxQXH+iCrITxAgVdfzFEXl4ET06oeVMpMO/lNG+iyd/4siuUvZCUWk3qS4mljdG31Sn45ZQ4iBpJ4m1W+t3Q3GN33tA5Ib5Xdfdu48jcRdVlui2WZuszU35TK2KV9VX9oEme/cGMQIWiy/Rslxrl8=
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-ssl-certs/templates/secrets.yaml b/kubernetes/so/charts/so-ssl-certs/templates/secrets.yaml
new file mode 100755 (executable)
index 0000000..2dcd08b
--- /dev/null
@@ -0,0 +1,45 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  {{- $psyamlpath := printf "resources/config/server-certs/cadi_keystore_password" }}
+  {{- $tsyamlpath := printf "resources/config/server-certs/cadi_truststore_password" }}
+  cadi_keystore_password: {{ .Files.Get $psyamlpath | trimSuffix "\n" }}
+  cadi_truststore_password: {{ .Files.Get $tsyamlpath | trimSuffix "\n" }}
+metadata:
+  name: {{ .Release.Name}}-so-ssl-pwd-secret
+  namespace: {{ include "common.namespace" . }}
+kind: Secret
+---
+apiVersion: v1
+data:
+  {{- $csjksyamlpath := printf "resources/config/server-certs/mso-server-key-store.jks" }}
+  {{- $tsjksyamlpath := printf "resources/config/server-certs/mso-trust-store.jks" }}
+  mso-server-key-store.jks: {{ .Files.Get $csjksyamlpath  | trimSuffix "\n" }}
+  mso-trust-store.jks: {{ .Files.Get $tsjksyamlpath  | trimSuffix "\n" }}
+metadata:
+  name: {{ .Release.Name}}-so-ssl-secret
+  namespace: {{ include "common.namespace" . }}
+kind: Secret
+---
+apiVersion: v1
+data:
+  {{- $kpyamlpath := printf "resources/config/client-certs/keystore_password" }}
+  {{- $tpyamlpath := printf "resources/config/client-certs/truststore_password" }}
+  keystore_password: {{ .Files.Get $kpyamlpath | trimSuffix "\n" }}
+  truststore_password: {{ .Files.Get $tpyamlpath | trimSuffix "\n" }}
+metadata:
+  name: {{ .Release.Name}}-so-ssl-client-secret
+  namespace: {{ include "common.namespace" . }}
+kind: Secret
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-vfc-adapter/Chart.yaml b/kubernetes/so/charts/so-vfc-adapter/Chart.yaml
new file mode 100755 (executable)
index 0000000..9a6f6a0
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+appVersion: "1.0"
+description: A Helm chart for Kubernetes
+name: so-vfc-adapter
+version: 2.0.0
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-vfc-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-vfc-adapter/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..6f579e7
--- /dev/null
@@ -0,0 +1,32 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+logging:
+  path: logs
+server:
+    port: 8084
+    tomcat:
+        max-threads: 50
+mso:
+  site-name: localSite
+  logPath: ./logs/vfc
+  adapters:
+    requestDb:
+      auth: Basic YnBlbDptc28tZGItMTUwNyE=
+      endpoint: https://so-request-db-adapter.{{ include "common.namespace" . }}:8083
+#Actuator
+management:
+  security:
+    enabled: false
+    basic:
+      enabled: false
diff --git a/kubernetes/so/charts/so-vfc-adapter/templates/configmap.yaml b/kubernetes/so/charts/so-vfc-adapter/templates/configmap.yaml
new file mode 100755 (executable)
index 0000000..a03dbd8
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright © 2018 AT&T USA
+#
+# 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-vfc-adapter/templates/deployment.yaml b/kubernetes/so/charts/so-vfc-adapter/templates/deployment.yaml
new file mode 100755 (executable)
index 0000000..a69c189
--- /dev/null
@@ -0,0 +1,139 @@
+# Copyright © 2018 AT&T USA
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+spec:
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
+        env:
+        - name: DB_HOST
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
+      volumes:
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
old mode 100644 (file)
new mode 100755 (executable)
similarity index 84%
rename from kubernetes/so/charts/mariadb/templates/service.yaml
rename to kubernetes/so/charts/so-vfc-adapter/templates/service.yaml
index eeebdcb..bbe5f27
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 AT&T USA
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -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: v1
 kind: Service
 metadata:
@@ -27,12 +26,13 @@ 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 }}
+      name: {{ .Values.service.portName }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
-    {{- end}}
       name: {{ .Values.service.portName }}
+    {{- end}}
   selector:
     app: {{ include "common.name" . }}
     release: {{ .Release.Name }}
\ No newline at end of file
diff --git a/kubernetes/so/charts/so-vfc-adapter/values.yaml b/kubernetes/so/charts/so-vfc-adapter/values.yaml
new file mode 100755 (executable)
index 0000000..8842806
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright © 2018 AT&T USA
+#
+# 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.
+image: onap/so/vfc-adapter:latest
+pullPolicy: IfNotPresent
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 8084
+logPath: ./logs/vfc/
+app: vfc-adapter
+service:
+    type: ClusterIP
+    internalPort: 8084
+    externalPort: 8084
+    portName: so-vfc-port
+updateStrategy:
+    type: RollingUpdate
+    maxUnavailable: 1
+    maxSurge: 1
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      memory: 4Gi
+      cpu: 2000m
+    requests:
+      memory: 1Gi
+      cpu: 500m
+  large:
+    limits:
+      memory: 8Gi
+      cpu: 4000m
+    requests:
+      memory: 2Gi
+      cpu: 1000m
+livenessProbe:
+    path: /manage/health
+    port: 8084
+    scheme: HTTP
+    initialDelaySeconds: 600
+    periodSeconds: 60
+    timeoutSeconds: 10
+    successThreshold: 1
+    failureThreshold: 3
+ingress:
+  enabled: false
+nodeSelector: {}
+tolerations: []
+affinity: {}
old mode 100644 (file)
new mode 100755 (executable)
index 9b24f82..2b88f5f
@@ -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.
-
 dependencies:
   - name: common
     version: ~2.0.0
old mode 100644 (file)
new mode 100755 (executable)
diff --git a/kubernetes/so/resources/config/overrides/override.yaml b/kubernetes/so/resources/config/overrides/override.yaml
new file mode 100755 (executable)
index 0000000..9d3c167
--- /dev/null
@@ -0,0 +1,95 @@
+server:
+    port: 8080
+    tomcat:
+        max-threads: 50
+ssl-enable: false
+mso:
+  msoKey: "07a7159d3bf51a0e53be7a8f89699be7"
+  logPath: logs
+  site-name: onapheat
+  catalog:
+    db:
+      spring:
+        endpoint: http://so-catalog-db-adapter.{{ include "common.namespace" . }}:8082
+  db:
+    auth: Basic cGFzc3dvcmQxJA==
+  adapters:
+    requestDb:
+      auth: YnBlbDptc28tZGItMTUwNyE=
+      endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
+    config:
+      path: /src/main/resources/
+  infra:
+    default:
+      alacarte:
+        orchestrationUri: /mso/async/services/ALaCarteOrchestrator
+        recipeTimeout: 180
+        testApi: VNF_API
+      service:
+        macro:
+          default:
+            testApi: GR_API
+  apih:
+    homing:
+      sdna:
+        url: http://so-sdnc-adapter.{{ include "common.namespace" . }}:8086/
+        password: 4112B789E942B161228F7D5AFC654C0F
+  bpelURL: http://so-bpmn-infra.{{ include "common.namespace" . }}:8082/
+  bpelAuth: 786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1
+  camundaURL: http://so-bpmn-infra.{{ include "common.namespace" . }}:8082/
+  camundaAuth: 5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1
+  async:
+    core-pool-size: 50
+    max-pool-size: 50
+    queue-capacity: 500
+  sdc:
+    client:
+      auth: F3473596C526938329DF877495B494DC374D1C4198ED3AD305EA3ADCBBDA1862
+    activate:
+      instanceid: test
+      userid: cs0008
+    endpoint: http://sdc-be.{{ include "common.namespace" . }}:8443
+  tenant:
+    isolation:
+      retry:
+        count: 3
+  aai:
+    endpoint: https://aai.{{ include "common.namespace" . }}:8443
+    auth: 2630606608347B7124C244AB0FE34F6F
+  so:
+    operational-environment:
+      dmaap:
+        username: testuser
+        password: VjR5NDcxSzA=
+        host: http://dmaap-bc.{{ include "common.namespace" . }}:8080
+      publisher:
+        topic: com.att.ecomp.mso.operationalEnvironmentEvent
+spring:
+  jersey:
+    type: filter
+  security:
+    usercredentials:
+    -
+      username: sitecontrol
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: SiteControl-Client
+    -
+      username: gui
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: GUI-Client
+    -
+      username: infraportal
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: InfraPortal-Client
+    -
+      username: InfraPortalClient
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: InfraPortal-Client
+    -
+      username: bpel
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: BPEL-Client
+    -
+      username: mso_admin
+      password: '$2a$10$Fh9ffgPw2vnmsghsRD3ZauBL1aKXebigbq3BB1RPWtE62UDILsjke'
+      role: ACTUATOR
old mode 100644 (file)
new mode 100755 (executable)
index 91d8ed4..5b97063
@@ -1,19 +1,14 @@
-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={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
-  echo "Visit http://127.0.0.1:8080 to use your application"
-  kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
-{{- end }}
+1. main components included in umbrella chart
+-- api-handler-infra
+-- asdc-controller
+-- bpmn-infra
+-- openstack-adapter
+-- sdnc-adapter
+-- vfc-adapter 
+2. dependencies included in charts sub directory
+-- db-secrets
+-- ssl-secrets
+-- catalog-db-adapter
+-- request-db-adapter
+4. Run the following helm command to deploy chart(s), remove --dry-run option
+       helm upgrade -f ./helm/values.yaml --install --debug --dry-run so ./so
old mode 100644 (file)
new mode 100755 (executable)
index db83fbb..a03dbd8
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 AT&T USA
 #
 # 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
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
 kind: ConfigMap
 metadata:
-  name: so-configmap
+  name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mso/*").AsConfig . | indent 2 }}
 ---
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: so-docker-file-configmap
+  name: {{ include "common.fullname" . }}-app-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/docker-files/scripts/start-jboss-server.sh").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/overrides/*").AsConfig . | indent 2 }}
old mode 100644 (file)
new mode 100755 (executable)
index 0f90737..a69c189
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 AT&T USA
 #
 # 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: extensions/v1beta1
 kind: Deployment
 metadata:
   name: {{ include "common.fullname" . }}
   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 }}
 spec:
-  replicas: {{ .Values.replicaCount }}
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
   template:
     metadata:
       labels:
@@ -31,164 +35,105 @@ spec:
         release: {{ .Release.Name }}
     spec:
       initContainers:
-      - command:
-        - /root/ready.py
-        args:
-        - --container-name
-        - {{ .Values.mariadb.nameOverride }}
+      - name: so-chown
+        image: alpine:3.6
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        imagePullPolicy: {{ index .Values.pullPolicy }}
+        command: ["/bin/sh", "-c", "chown -Rf 1000:1000 /app/logs"]
+      restartPolicy: Always
+      containers:
+      - name: {{ include "common.name" . }}
+        image: {{ include "common.repository" . }}/{{ .Values.image }}
+        resources:
+{{ toYaml (pluck .Values.flavor .Values.resources| first) | indent 12 }}
         env:
-        - name: NAMESPACE
+        - name: DB_HOST
           valueFrom:
-            fieldRef:
-              apiVersion: v1
-              fieldPath: metadata.namespace
-        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
-        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-        name: {{ include "common.name" . }}-readiness
-      containers:
-        - name: {{ .Chart.Name }}
-          command:
-          - /tmp/start-jboss-server.sh
-          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
-          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          ports:
-          - containerPort: {{ .Values.service.internalPort }}
-          - containerPort: {{ .Values.service.internalPort2 }}
-          - containerPort: {{ .Values.service.internalPort3 }}
-          - containerPort: {{ .Values.service.internalPort4 }}
-          - containerPort: {{ .Values.service.internalPort5 }}
-          # disable liveness probe when breakpoints set in debugger
-          # so K8s doesn't restart unresponsive container
-          {{ 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 }}
-          env:
-            - name: JBOSS_DEBUG
-              value: {{ .Values.global.debugEnabled | default .Values.debugEnabled | quote }}
-          volumeMounts:
-          - mountPath: /etc/localtime
-            name: localtime
-            readOnly: true
-          - mountPath: /shared/
-            name: so
-          - mountPath: /tmp/start-jboss-server.sh
-            name: so-docker-files
-            subPath: start-jboss-server.sh
-          - mountPath: /opt/jboss/standalone/configuration/standalone-full-ha-mso.xml
-            name: so-config
-            subPath: standalone-full-ha-mso.xml
-          - mountPath: /var/log/onap
-            name: so-logs
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.network.xml
-            name: so-logback
-            subPath: logback.network.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.tenant.xml
-            name: so-logback
-            subPath: logback.tenant.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.vnf.xml
-            name: so-logback
-            subPath: logback.vnf.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.vfc.xml
-            name: so-logback
-            subPath: logback.vfc.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml
-            name: so-logback
-            subPath: logback.apihandler-infra.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-appc-adapter-config/logback.appc.xml
-            name: so-logback
-            subPath: logback.appc.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml
-            name: so-logback
-            subPath: logback.msorequestsdbadapter.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-asdc-controller-config/logback.asdc.xml
-            name: so-logback
-            subPath: logback.asdc.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-sdnc-adapter-config/logback.sdnc.xml
-            name: so-logback
-            subPath: logback.sdnc.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-bpmn-config/logback.bpmn.xml
-            name: so-logback
-            subPath: logback.bpmn.xml
-          - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-workflow-message-adapter-config/logback.workflow-message-adapter.xml
-            name: so-logback
-            subPath: logback.workflow-message-adapter.xml
-          resources:
-{{ toYaml .Values.resources | indent 12 }}
-        {{- if .Values.nodeSelector }}
-        nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 10 }}
-        {{- end -}}
-        {{- if .Values.affinity }}
-        affinity:
-{{ toYaml .Values.affinity | indent 10 }}
-        {{- end }}
-
-        # side car containers
-        - name: filebeat-onap
-          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
-          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          volumeMounts:
-          - mountPath: /usr/share/filebeat/filebeat.yml
-            name: filebeat-conf
-            subPath: filebeat.yml
-          - mountPath: /var/log/onap
-            name: so-logs
-          - mountPath: /usr/share/filebeat/data
-            name: so-data-filebeat
-
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.host
+        - name: DB_PORT
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.port
+        - name: DB_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.rolename
+        - name: DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.readwrite.password
+        - name: DB_ADMIN_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.rolename
+        - name: DB_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-db-secrets
+              key: mariadb.admin.password
+        - name: CADI_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_keystore_password
+        - name: CADI_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-pwd-secret
+              key: cadi_truststore_password
+        - name: MSO_KEYSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: keystore_password
+        - name: MSO_TRUSTSTORE_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: {{ .Release.Name}}-so-ssl-client-secret
+              key: truststore_password
+        envFrom:
+        - configMapRef:
+            name: {{ include "common.fullname" . }}-configmap
+        imagePullPolicy:  {{ index .Values "global" "pullPolicy" }}
+        volumeMounts:
+        - name: logs
+          mountPath: /app/logs
+        - name: certs
+          mountPath: /app/certs/
+          readOnly: true
+        - name: config
+          mountPath: /app/config
+          readOnly: true
+        livenessProbe:
+          httpGet:
+            path: {{- index .Values.livenessProbe.path|indent 2}}
+            port: {{ index .Values.containerPort }}
+            scheme: {{- index .Values.livenessProbe.scheme| indent 2}}
+          initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+          periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+          timeoutSeconds: {{ index .Values.livenessProbe.timeoutSeconds}}
+          successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+          failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+        ports:
+        - containerPort: {{ index .Values.containerPort }}
+          name: {{ .Values.service.portName }}
+          protocol: TCP
       volumes:
-        - name: localtime
-          hostPath:
-            path: /etc/localtime
-        - name: so-logback
-          configMap:
-            name: so-log-configmap
-        - name: filebeat-conf
-          configMap:
-            name: so-filebeat-configmap
-        - name: so
-          configMap:
-            name: so-configmap
-            items:
-            - key: mso-docker.json
-              path: mso-docker.json
-              mode: 0755
-            - key: onap-ca.crt
-              path: onap-ca.crt
-              mode: 0755
-            - key: onap-ca-new.crt
-              path: onap-ca-new.crt
-              mode: 0755
-            - key: encryption.key
-              path: encryption.key
-              mode: 0644
-        - name: so-config
-          configMap:
-            name: so-configmap
-            items:
-            - key: standalone-full-ha-mso.xml
-              path: standalone-full-ha-mso.xml
-              mode: 0644
-        - name: so-logs
-          emptyDir: {}
-        - name: so-data-filebeat
-          emptyDir: {}
-        - name: so-docker-files
-          configMap:
-            name: so-docker-file-configmap
-            items:
-            - key: start-jboss-server.sh
-              path: start-jboss-server.sh
-              mode: 0755
+      - name: logs
+        emptyDir: {}
+      - name: certs
+        secret:
+            secretName: {{ .Release.Name}}-so-ssl-secret
+      - name: config
+        configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
       imagePullSecrets:
-      - name: "{{ include "common.namespace" . }}-docker-registry-key"
-
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
old mode 100644 (file)
new mode 100755 (executable)
index ac9d179..a813a18
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 AT&T USA
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -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: v1
 kind: Service
 metadata:
@@ -24,24 +23,367 @@ metadata:
     heritage: {{ .Release.Service }}
   annotations:
     msb.onap.org/service-info: '[
-      {
-          "serviceName": "{{ include "common.servicename" . }}",
-          "version": "v1",
-          "url": "/ecomp/mso/infra",
-          "protocol": "REST"
-          "port": "8080",
-          "visualRange":"1"
-      },
-      {
-          "serviceName": "so-deprecated",
-          "version": "v1",
-          "url": "/ecomp/mso/infra",
-          "protocol": "REST"
-          "port": "8080",
-          "visualRange":"1",
-          "path":"/ecomp/mso/infra"
-      }
-      ]'
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/cloudResources/{version:[vV][1]}/operationalEnvironments",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/cloudResources/{version:[vV][1]}/operationalEnvironments/{operationalEnvironmentId}/activate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/cloudResources/{version:[vV][1]}/operationalEnvironments/{operationalEnvironmentId}/deactivate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/cloudResourcesRequests/{version:[vV][1]}/{requestId}/unlock",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/cloudResourcesRequests/{version:[vV][1]}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/orchestrationRequests/{version:[vV][4-7]}/{requestId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/orchestrationRequests/{version:[vV][4-7]}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/orchestrationRequests/{version:[vV][4-7]}/{requestId}/unlock",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/activate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/deactivate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][7]}/serviceInstances/assign",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][7]}/serviceInstances/{serviceInstanceId}/unassign",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/configurations",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/configurations/{configurationInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/configurations/{configurationInstanceId}/enablePort",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/configurations/{configurationInstanceId}/disablePort",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/configurations/{configurationInstanceId}/activate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/configurations/{configurationInstanceId}/deactivate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][6-7]}/serviceInstances/{serviceInstanceId}/addRelationships",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][6-7]}/serviceInstances/{serviceInstanceId}/removeRelationships",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/replace",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][6-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/applyUpdatedConfig",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules/{vfmoduleInstanceId}/replace",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules/{vfmoduleInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][6-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/inPlaceSoftwareUpdate",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules/{vfmoduleInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules/{vfmoduleInstanceId}/deactivateAndCloudDelete",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules/scaleOut",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/volumeGroups",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/volumeGroups/{volumeGroupInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+         {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/vnfs/{vnfInstanceId}/volumeGroups/{volumeGroupInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiation/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/networks",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/networks/{networkInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         },
+          {
+        "serviceName": "so/apih",
+        "version": "v1",
+        "url": "/onap/so/infra/serviceInstantiationRequests/{version:[vV][5-7]}/serviceInstances/{serviceInstanceId}/networks/{networkInstanceId}",
+        "protocol": "REST",
+        "port": "{{ .Values.service.externalPort }}",
+        "visualRange":"0",
+        "lb_policy":"ip_hash"
+         }
+         ]'
 spec:
   type: {{ .Values.service.type }}
   ports:
@@ -49,36 +391,11 @@ 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.portName }}2
-    - port: {{ .Values.service.internalPort3 }}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
-      name: {{ .Values.service.portName }}3
-    - port: {{ .Values.service.internalPort4 }}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
-      name: {{ .Values.service.portName }}4
-    - port: {{ .Values.service.internalPort5 }}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
-      name: {{ .Values.service.portName }}5
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
       name: {{ .Values.service.portName }}
-    - port: {{ .Values.service.externalPort2 }}
-      targetPort: {{ .Values.service.internalPort2 }}
-      name: {{ .Values.service.portName }}2
-    - port: {{ .Values.service.externalPort3 }}
-      targetPort: {{ .Values.service.internalPort3 }}
-      name: {{ .Values.service.portName }}3
-    - port: {{ .Values.service.externalPort4 }}
-      targetPort: {{ .Values.service.internalPort4 }}
-      name: {{ .Values.service.portName }}4
-    - port: {{ .Values.service.externalPort5 }}
-      targetPort: {{ .Values.service.internalPort5 }}
-      name: {{ .Values.service.portName }}5
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
-
+    release: {{ .Release.Name }}
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
index d7a769a..b01d486
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 AT&T USA
 #
 # 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.
-
-# Default values for so.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-global: # global defaults
-  nodePortPrefix: 302
-  readinessRepository: oomk8s
-  readinessImage: readiness-check:2.0.0
-  loggingRepository: docker.elastic.co
-  loggingImage: beats/filebeat:5.5.0
-
-subChartsOnly:
-  enabled: true
-
-# application image
 repository: nexus3.onap.org:10001
-image: openecomp/mso:1.2.2
-pullPolicy: Always
-  
-# flag to enable debugging - application support required
-debugEnabled: false
-
-# application configuration
-config:
-  # message router configuration
-  dmaapTopic: "AUTO"
-  # openstack configuration
-  openStackUserName: "vnf_user"
-  openStackRegion: "RegionOne"
-  openStackKeyStoneUrl: "http://1.2.3.4:5000"
-  openStackServiceTenantName: "service"
-  openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
-  logstashServiceName: log-ls
-  logstashPort: 5044
-  sniro:
-    serviceName: sniro-emulator
-    port: 80
-  aai:
-    serviceName: aai
-    port: 8443
-  messagerouter:
-    serviceName: message-router
-    port: 3904
-  msb:
-    serviceName: msb-iag
-    port: 80
-  oof:
-    serviceName: oof-has-api
-    port: 8091
-  sdnc:
-    serviceName: sdnc
-    port: 8282
-  sdc:
-    serviceName: sdc-be
-    port: 8443
-
-# subchart configuration
+image: onap/so/api-handler-infra:latest
+pullPolicy: IfNotPresent
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 8080
+logPath: ./logs/apih/
+app: api-handler-infra
+service:
+    type: NodePort
+    nodePort: 77
+    internalPort: 8080
+    portName: so-apih-port
+updateStrategy:
+    type: RollingUpdate
+    maxUnavailable: 1
+    maxSurge: 1
+# 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
+livenessProbe:
+    path: /manage/health
+    scheme: HTTP
+    initialDelaySeconds: 600
+    periodSeconds: 60
+    timeoutSeconds: 10
+    successThreshold: 1
+    failureThreshold: 3
+global:
+  nodePortPrefix: 302
+  # docker repository
+  repository: nexus3.onap.org:10001
+  # image pull Policy
+  pullPolicy: IfNotPresent
 mariadb:
   nameOverride: so-db
-
-# default number of instances
-replicaCount: 1
-
 nodeSelector: {}
-
 affinity: {}
-
-# probe configuration parameters
-liveness:
-  initialDelaySeconds: 10
-  periodSeconds: 10
-  # necessary to disable liveness probe when setting breakpoints
-  # in debugger so K8s doesn't restart unresponsive container
-  enabled: true
-
-readiness:
-  initialDelaySeconds: 10
-  periodSeconds: 10
-
-service:
-  type: NodePort
-  name: so
-  portName: so
-  internalPort: 8080
-  nodePort: 23
-  internalPort2: 3904
-  nodePort2: 25
-  internalPort3: 3905
-  nodePort3: 24
-  internalPort4: 9990
-  nodePort4: 22
-  internalPort5: 8787
-  nodePort5: 50
-
-ingress:
-  enabled: false
-
-resources: {}
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
-  #
-  # Example:
-  # Configure resource requests and limits
-  # ref: http://kubernetes.io/docs/user-guide/compute-resources/
-  # Minimum memory for development is 2 CPU cores and 4GB memory 
-  # Minimum memory for production is 4 CPU cores and 8GB memory 
-#resources:
-#  limits:
-#    cpu: 2
-#    memory: 4Gi
-#  requests:
-#    cpu: 2
-#    memory: 4Gi
index 6e0b9fc..1b2d9b9 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index accdff9..e1c0d77 100644 (file)
@@ -1,5 +1,5 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
+# Copyright © 2018 ZTE
+# Modifications Copyright © 2018 AT&T, 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
index 6e0b9fc..1b2d9b9 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
index c20ba10..5cd4f38 100644 (file)
@@ -49,10 +49,6 @@ spec:
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          lifecycle:
-            postStart:
-              exec:
-                command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/usr/local/tomcat/webapps/vid/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
           ports:
           - containerPort: {{ .Values.service.internalPort }}
           # disable liveness probe when breakpoints set in debugger
@@ -83,7 +79,7 @@ spec:
             - name: VID_ECOMP_SHARED_CONTEXT_REST_URL
               value: http://portal-app.{{ include "common.namespace" . }}:{{ .Values.config.onapport }}/ONAPPORTAL/context
             - name: VID_MSO_SERVER_URL
-              value: http://so.{{ include "common.namespace" . }}:{{ .Values.config.msoport }}
+              value: https://so.{{ include "common.namespace" . }}:{{ .Values.config.msoport }}
             - name: VID_MSO_PASS
               value: "{{ .Values.config.vidmsopass }}"
             - name: MSO_DME2_SERVER_URL
index 3d1097f..36b35e4 100644 (file)
@@ -29,10 +29,16 @@ 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" . }}
index 63726df..34a265c 100644 (file)
@@ -27,7 +27,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/vid:2.0.0
+image: onap/vid:3.0.0
 pullPolicy: Always
 
 # mariadb image for initializing
@@ -40,7 +40,7 @@ config:
   asdcclientrestport: "8080"
   vidaaiport: "8443"
   onapport: "8989"
-  msoport: "8080"
+  msoport: "8443"
   vidmsopass: OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz
   msodme2serverurl: http://localhost:8081
   vidcontactuslink: https://todo_contact_us_link.com
@@ -80,9 +80,13 @@ service:
   type: NodePort
   name: vid
   portName: vid
-  externalPort: "00"
+  externalPort: 8443
+  internalPort: 8443
   nodePort: "00"
-  internalPort: 8080
+  portName2: vid-http
+  externalPort2: 8080
+  internalPort2: 8080
+  nodePort2: "38"
 
 ingress:
   enabled: false
index ce82a2f..3b2a02a 100644 (file)
@@ -16,3 +16,6 @@ dependencies:
   - name: common
     version: ~2.0.0
     repository: '@local'
+  - name: postgres
+    version: ~2.0.0
+    repository: '@local'
diff --git a/kubernetes/vnfsdk/resources/config/marketplace_tables_postgres.sql b/kubernetes/vnfsdk/resources/config/marketplace_tables_postgres.sql
new file mode 100644 (file)
index 0000000..c05d7f2
--- /dev/null
@@ -0,0 +1,25 @@
+CREATE DATABASE "marketplaceDB";
+
+\c marketplaceDB;
+
+DROP TABLE IF EXISTS CSAR_PACKAGE_TABLE;
+
+CREATE TABLE CSAR_PACKAGE_TABLE (
+        CSARID                   VARCHAR(200)       NOT NULL,
+        DOWNLOADURI              VARCHAR(200)       NULL,
+        REPORT                       VARCHAR(200)       NULL,
+        SIZE                     VARCHAR(100)       NULL,
+        FORMAT                   VARCHAR(100)       NULL,
+        CREATETIME               VARCHAR(100)       NULL,
+        DELETIONPENDING          VARCHAR(100)       NULL,
+        MODIFYTIME               VARCHAR(100)       NULL,
+        SHORTDESC                    TEXT                       NULL,
+        NAME                     VARCHAR(100)       NULL,
+        VERSION                  VARCHAR(20)        NULL,
+        PROVIDER                 VARCHAR(300)       NULL,
+        TYPE                     VARCHAR(300)       NULL,
+        DETAILS                      TEXT                           NULL,
+        REMARKS                      TEXT                           NULL,
+        DOWNLOADCOUNT            INT                NULL,
+        CONSTRAINT csar_package_table_pkey PRIMARY KEY (CSARID)
+);
index 652e69d..cf415bd 100644 (file)
@@ -1,3 +1,16 @@
+# 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.
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
diff --git a/kubernetes/vnfsdk/templates/configmap.yaml b/kubernetes/vnfsdk/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..5a40a61
--- /dev/null
@@ -0,0 +1,21 @@
+# 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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/marketplace_tables_postgres.sql").AsConfig . | indent 2 }}
index 8220553..5b6f923 100644 (file)
@@ -38,7 +38,7 @@ spec:
         - /root/ready.py
         args:
         - --container-name
-        - "{{ .Values.vnfsdkpostgres.nameOverride }}"
+        - "{{ .Values.postgres.nameOverride }}"
         env:
         - name: NAMESPACE
           valueFrom:
@@ -54,7 +54,7 @@ spec:
         name: {{ include "common.name" . }}
         env:
         - name: POSTGRES_SERVICE_HOST
-          value: "$(VNFSDK_POSTGRES_SERVICE_HOST)"
+          value: "$(VNFSDK_DBSET_SERVICE_HOST)"
         readinessProbe:
           tcpSocket:
             port: {{ .Values.service.internalPort }}
diff --git a/kubernetes/vnfsdk/templates/job.yaml b/kubernetes/vnfsdk/templates/job.yaml
new file mode 100644 (file)
index 0000000..08d3107
--- /dev/null
@@ -0,0 +1,70 @@
+# 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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: {{ include "common.fullname" . }}-init-postgres
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}-job
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  backoffLimit: 20
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}-job
+        release: {{ .Release.Name }}
+    spec:
+      restartPolicy: Never
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - "{{ .Values.postgres.nameOverride }}"
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy}}
+        name: {{ include "common.name" . }}-readiness
+      containers:
+      - name: {{ include "common.name" . }}-job
+        image: "{{ .Values.postgresRepository }}/{{ .Values.postgresImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        env:
+        - name: PGPASSWORD
+          value: "{{ .Values.postgres.config.pgUserPassword }}"
+        command:
+        - /bin/sh
+        - -c
+        - |
+          psql -U {{ .Values.postgres.config.pgUserName }} -h $(VNFSDK_DBPRI_SERVICE_HOST) -f /aaa/init/marketplace_tables_postgres.sql
+        volumeMounts:
+        - name: init-data
+          mountPath: /aaa/init/marketplace_tables_postgres.sql
+          subPath: marketplace_tables_postgres.sql
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
+      volumes:
+      - name: init-data
+        configMap:
+          name: {{ include "common.fullname" . }}
index edca2ec..0db7744 100644 (file)
@@ -29,11 +29,30 @@ global:
 # application image
 repository: nexus3.onap.org:10001
 image: onap/vnfsdk/refrepo:1.1.1
+postgresRepository: crunchydata
+postgresImage: crunchy-postgres:centos7-10.3-1.8.2
 pullPolicy: Always
 
-#subchart name
-vnfsdkpostgres:
+# application configuration override for postgres
+postgres:
   nameOverride: vnfsdk-postgres
+  service:
+    name: vnfsdk-dbset
+    name2: vnfsdk-dbpri
+    name3: vnfsdk-dbrep
+  container:
+    name:
+      primary: vnfsdk-dbpri
+      replica: vnfsdk-dbrep
+  persistence:
+    mountSubPath: vnfsdk/data
+    mountInitPath: vnfsdk
+  config:
+    pgUserName: postgres
+    pgDatabase: postgres
+    pgPrimaryPassword: postgres
+    pgUserPassword: postgres
+    pgRootPassword: postgres
 
 # flag to enable debugging - application support required
 debugEnabled: false